server_commit
This commit is contained in:
@@ -511,4 +511,29 @@ public class SysUserController {
|
||||
resultMap.put("isShow", count > 0);
|
||||
return Result.success(resultMap);
|
||||
}
|
||||
|
||||
|
||||
@At
|
||||
@Ok("json")
|
||||
@RequiresAuthentication
|
||||
public Object doEditUser(Sys_user user){
|
||||
try {
|
||||
if(Strings.isBlank(user.getCardNum())) return Result.error("请填写会员服务卡卡号!");
|
||||
int update = sysUserService.update(Chain.make("cardNum", user.getCardNum()), Cnd.where("id", "=", ShiroUtil.getUserId()));
|
||||
return update>0 ? Result.success() : Result.error();
|
||||
} catch (Exception e) {
|
||||
return Result.error();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@At
|
||||
@Ok("json")
|
||||
@ViReturn
|
||||
@RequiresAuthentication
|
||||
public Object judgeIdCard(){
|
||||
return sysUserService.count(Cnd.where("id","=", ShiroUtil.getUserId())
|
||||
.and("member","=",1).and("userState","=","在职")
|
||||
.and(Cnd.exps("cardNum","is",null).or("cardNum","=","")));
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -308,7 +308,7 @@ public class ActivityBasicScopeController {
|
||||
COLUMN_COMMENT
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_NAME = 'sys_user'
|
||||
AND TABLE_SCHEMA = 'zhgh_hmc'
|
||||
AND TABLE_SCHEMA = 'zhgh_ecgtu'
|
||||
""");
|
||||
List<NutMap> sqlDataList = activityBasicScopeService.listMap(sql);
|
||||
// sqlDataList.forEach(v -> v.put("DATA_TYPE", new String((byte[]) v.get("DATA_TYPE"))));
|
||||
|
||||
+1
-1
@@ -302,7 +302,7 @@ public class MemberCommonController {
|
||||
COLUMN_COMMENT
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_NAME = 'sys_user'
|
||||
AND TABLE_SCHEMA = 'zhgh_hmc'
|
||||
AND TABLE_SCHEMA = 'zhgh_ecgtu'
|
||||
""");
|
||||
List<NutMap> userTableColumnInfos = sysUserService.listMap(userColumnSql);
|
||||
|
||||
|
||||
@@ -87,6 +87,12 @@ public class MemberChangeRecord {
|
||||
@Size(max = 30)
|
||||
private String idCard;
|
||||
|
||||
@Column
|
||||
@Comment("会员服务卡卡号")
|
||||
@ColDefine(type = ColType.VARCHAR, width = 30)
|
||||
@Size(max = 30)
|
||||
private String cardNum;
|
||||
|
||||
@Column
|
||||
@Comment("民族")
|
||||
@ColDefine(type = ColType.VARCHAR, width = 20)
|
||||
|
||||
@@ -7,104 +7,104 @@
|
||||
<title>${AppName!}</title>
|
||||
<meta charset="UTF-8">
|
||||
<!-- import CSS -->
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/myframe/css/myframe.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/element-ui/lib/theme-chalk/index.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/fonts/themify-icons.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/fonts/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/common.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/main.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/elmain.css?v=1.0.0">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/panel.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/myframe/css/myframe.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/element-ui/lib/theme-chalk/index.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/fonts/themify-icons.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/fonts/font-awesome.min.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/common.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/main.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/elmain.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/panel.css?v=1.0.1">
|
||||
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/wangeditor/wangEditor.css">
|
||||
<link rel="stylesheet" type="text/css" href="${base!}/assets/platform/plugins/viewer/viewer.min.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/wp-upload-vue/css/wpupload.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/wp-upload-vue/font/iconfont.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/video/css/video-js.min.css">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/vivify.min.css">
|
||||
<link href="${base!}/assets/platform/plugins/vue-cron/vcrontab.css" rel="stylesheet"/>
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/wangeditor/wangEditor.css?v=1.0.1">
|
||||
<link rel="stylesheet" type="text/css" href="${base!}/assets/platform/plugins/viewer/viewer.min.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/wp-upload-vue/css/wpupload.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/wp-upload-vue/font/iconfont.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/plugins/video/css/video-js.min.css?v=1.0.1">
|
||||
<link rel="stylesheet" href="${base!}/assets/platform/css/vivify.min.css?v=1.0.1">
|
||||
<link href="${base!}/assets/platform/plugins/vue-cron/vcrontab.css?v=1.0.1" rel="stylesheet"/>
|
||||
|
||||
<script src="${base!}/assets/platform/plugins/vue-cron/vcrontab.umd.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vue-cron/vcrontab.umd.min.js?v=1.0.1"></script>
|
||||
<!-- import Vue before Element -->
|
||||
<script src="${base!}/assets/platform/plugins/vue/vue.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vue/vue.min.js?v=1.0.1"></script>
|
||||
|
||||
<!-- vue-count-to -->
|
||||
<script src="${base!}/assets/platform/plugins/vue-count-to/vue-count-to.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vue-count-to/vue-count-to.min.js?v=1.0.1"></script>
|
||||
|
||||
<!-- wpupload -->
|
||||
<script type="text/javascript" src="${base!}/assets/platform/plugins/wp-upload-vue/js/axios.min.js"></script>
|
||||
<script type="text/javascript" src="${base!}/assets/platform/plugins/wp-upload-vue/font/iconfont.js"></script>
|
||||
<script type="text/javascript" src="${base!}/assets/platform/plugins/wp-upload-vue/js/wpupload.js"></script>
|
||||
<script type="text/javascript" src="${base!}/assets/platform/plugins/wp-upload-vue/js/axios.min.js?v=1.0.1"></script>
|
||||
<script type="text/javascript" src="${base!}/assets/platform/plugins/wp-upload-vue/font/iconfont.js?v=1.0.1"></script>
|
||||
<script type="text/javascript" src="${base!}/assets/platform/plugins/wp-upload-vue/js/wpupload.js?v=1.0.1"></script>
|
||||
|
||||
<!-- import JavaScript -->
|
||||
<script src="${base!}/assets/platform/plugins/element-ui/lib/index.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/element-ui/lib/i18n/${lang,escape}.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/jquery/jquery-1.11.1.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/slimscroll/jquery.slimscroll.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/element-ui/lib/index.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/plugins/element-ui/lib/i18n/${lang,escape}.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/plugins/jquery/jquery-1.11.1.min.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/plugins/slimscroll/jquery.slimscroll.min.js?v=1.0.1"></script>
|
||||
|
||||
<!--后面就改这一段吧-->
|
||||
<script src="${base!}/assets/platform/plugins/dd3s/dd3s.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/video/js/video.min.js"></script>
|
||||
|
||||
<!--g2-->
|
||||
<script src="/assets/platform/plugins/g2/g2.min.js?v=4.1.9"></script>
|
||||
<script src="/assets/platform/plugins/g2/data-set.js"></script>
|
||||
<script src="/assets/platform/plugins/g2/g2plot.js?v=1.0.0"></script>
|
||||
<script src="/assets/platform/plugins/g2/g2.min.js?v=4.1.10"></script>
|
||||
<script src="/assets/platform/plugins/g2/data-set.js?v=1.0.1"></script>
|
||||
<script src="/assets/platform/plugins/g2/g2plot.js?v=1.0.1"></script>
|
||||
|
||||
<!--echars-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/echarts.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/echarts/infographic.js"></script><!--主题-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/westeros.js"></script><!--主题-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/walden.js"></script><!--主题-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/macarons.js"></script><!--主题-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/echarts.min.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/plugins/echarts/infographic.js?v=1.0.1"></script><!--主题-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/westeros.js?v=1.0.1"></script><!--主题-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/walden.js?v=1.0.1"></script><!--主题-->
|
||||
<script src="${base!}/assets/platform/plugins/echarts/macarons.js?v=1.0.1"></script><!--主题-->
|
||||
<!-- <script src="https://cdn.staticfile.org/echarts/5.2.2/echarts.js"></script>-->
|
||||
<!-- <script src="https://cdn.staticfile.org/echarts/5.2.2/i18n/langZH.js"></script>-->
|
||||
|
||||
|
||||
<script src="${base!}/assets/platform/module/mixins/initTableMixins.js?v=1.0.3"></script>
|
||||
<script src="${base!}/assets/platform/module/mixins/styleMixin.js"></script>
|
||||
<script src="${base!}/assets/platform/js/includeModel.js?v=1.0.5"></script>
|
||||
<script src="${base!}/assets/platform/js/component.js?v=1.0.2"></script>
|
||||
<script src="${base!}/assets/platform/js/v.js?v=1.0.5"></script>
|
||||
<script src="${base!}/assets/platform/module/mixins/initTableMixins.js?v=1.0.4"></script>
|
||||
<script src="${base!}/assets/platform/module/mixins/styleMixin.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/js/includeModel.js?v=1.0.6"></script>
|
||||
<script src="${base!}/assets/platform/js/component.js?v=1.0.3"></script>
|
||||
<script src="${base!}/assets/platform/js/v.js?v=1.0.6"></script>
|
||||
<script src="${base!}/assets/platform/plugins/wangeditor/wangEditor.js"></script>
|
||||
<!-- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/wangeditor@4.6.15/dist/wangEditor.min.js"></script>-->
|
||||
<script type="text/javascript"
|
||||
src="https://webapi.amap.com/maps?v=1.4.15&key=6ab3452804ba35050880b5e047436853&plugin=AMap.PolyEditor,AMap.PlaceSearch"></script>
|
||||
|
||||
<!--viewer-->
|
||||
<script src="${base!}/assets/platform/plugins/viewer/viewer.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/viewer/jquery-viewer.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vue-loader/httpVueLoader.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vue-qrcode/vue-qrcode.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/viewer/viewer.min.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/plugins/viewer/jquery-viewer.min.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vue-loader/httpVueLoader.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vue-qrcode/vue-qrcode.min.js?v=1.0.1"></script>
|
||||
|
||||
|
||||
<!-- pjax是异步加载html片段的工具,模拟前端路由机制 -->
|
||||
<script src="${base!}/assets/platform/plugins/pjax/jquery.pjax.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/myframe/js/myframe.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/pjax/jquery.pjax.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/plugins/myframe/js/myframe.js?v=1.0.1"></script>
|
||||
<!-- Array数组增加findIndex等方法,TreeTable用得到,兼容IE8 -->
|
||||
<script src="${base!}/assets/platform/plugins/polyfill/polyfill.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/polyfill/polyfill.js?v=1.0.1"></script>
|
||||
<!-- 时间日期处理工具类 -->
|
||||
<script src="${base!}/assets/platform/plugins/moment/moment.min.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/moment/moment.min.js?v=1.0.1"></script>
|
||||
<!-- 浏览器通知 -->
|
||||
<script src="${base!}/assets/platform/plugins/push/push.min.js"></script>
|
||||
<script src="${base!}/assets/platform/js/main.js?v=1.0.0"></script>
|
||||
<script src="${base!}/assets/platform/js/offscreen.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/push/push.min.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/js/main.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/js/offscreen.js?v=1.0.1"></script>
|
||||
<!-- <script src="https://cdn.jsdelivr.net/npm/vue-echarts@4.0.2"></script>-->
|
||||
<script src="${base!}/assets/platform/plugins/vue-charts/echartTheme.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/vue-charts/echartTheme.js?v=1.0.1"></script>
|
||||
|
||||
<!--拖拽js-->
|
||||
<script src="${base!}/assets/platform/js/directive/v-sticky.js"></script>
|
||||
<script src="${base!}/assets/platform/js/directive/v-sticky.js?v=1.0.1"></script>
|
||||
|
||||
<script src="${base!}/assets/platform/js/jquery.qrcode.min.js"></script>
|
||||
<script src="${base!}/assets/platform/js/jquery.qrcode.min.js?v=1.0.1"></script>
|
||||
|
||||
<script src="${base!}/assets/platform/js/jr-qrcode.js"></script>
|
||||
<script src="${base!}/assets/platform/js/jr-qrcode.js?v=1.0.1"></script>
|
||||
|
||||
<!--字典混入-->
|
||||
<script src="${base!}/components/plugins/sysDict/DictData.js"></script>
|
||||
<script src="${base!}/components/plugins/sysDict/DictData.js?v=1.0.1"></script>
|
||||
|
||||
<script src="${base!}/assets/platform/js/chengSh.js"></script>
|
||||
<script src="${base!}/assets/platform/js/util/commonUtil.js"></script>
|
||||
<script src="${base!}/assets/platform/plugins/xlsx/xlsx.full.min.js"></script>
|
||||
<script src="${base!}/assets/platform/js/chengSh.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/js/util/commonUtil.js?v=1.0.1"></script>
|
||||
<script src="${base!}/assets/platform/plugins/xlsx/xlsx.full.min.js?v=1.0.1"></script>
|
||||
|
||||
<!-- <script src="${base!}/assets/platform/js/chengSh.js"></script>-->
|
||||
|
||||
|
||||
@@ -29,10 +29,10 @@ const MEMBER_APPLY_AUDIT_INFO = {
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
|
||||
<!-- <el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="会员服务卡号">{{ viewData.cardNum }}</el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item></el-descriptions-item>-->
|
||||
|
||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<!--<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<el-table v-if="viewData.families&&viewData.families.length"
|
||||
:data="viewData.families" size="mini" border
|
||||
:header-cell-style="{background:'#eff3f6'}"
|
||||
@@ -47,7 +47,7 @@ const MEMBER_APPLY_AUDIT_INFO = {
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-empty v-else :image-size="50" description="暂无家庭成员信息"></el-empty>
|
||||
</el-descriptions-item>
|
||||
</el-descriptions-item>-->
|
||||
<el-descriptions-item label="个人简况" :span="3">
|
||||
<div v-if="viewData.vita" class="text-left" v-html="viewData.vita"></div>
|
||||
<el-tag type="warning" v-else>暂无</el-tag>
|
||||
|
||||
@@ -3,7 +3,7 @@ layout("/layouts/platform.html"){
|
||||
#-->
|
||||
<style>
|
||||
.el-descriptions-item__label {
|
||||
width: 15% !important;
|
||||
/*width: 15% !important;*/
|
||||
text-align: center !important;
|
||||
}
|
||||
</style>
|
||||
@@ -229,13 +229,6 @@ layout("/layouts/platform.html"){
|
||||
sex: [{required: false, message: "必填", trigger: ["change", "blur"]}],
|
||||
isVoluntary: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||
sign: [{required: true, message: "必填", trigger: ["change", "blur"]}],
|
||||
phone: [
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
},
|
||||
trigger: ["change", "blur"]
|
||||
}
|
||||
],
|
||||
email: [
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
@@ -250,52 +243,52 @@ layout("/layouts/platform.html"){
|
||||
trigger: ["change", "blur"]
|
||||
}
|
||||
],
|
||||
idCard: [
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (!value) {
|
||||
// 如果值为空,直接通过校验
|
||||
callback();
|
||||
} else if (/^[1-9]\d{5}(18|19|20)?\d{2}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}(\d|[Xx])$/.test(value)) {
|
||||
// 18位身份证号码格式正确
|
||||
callback();
|
||||
} else if (/^[1-9]\d{7}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// 15位身份证号码格式正确
|
||||
callback();
|
||||
} else if (/^[1-9]\d{5}(18|19|20)?\d{2}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// 外国人身份证号码格式正确(18位)
|
||||
callback();
|
||||
} else if (/^[1-9]\d{7}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// 外国人身份证号码格式正确(15位)
|
||||
callback();
|
||||
} else {
|
||||
// 格式错误,返回错误信息
|
||||
callback(new Error("身份证号码格式错误"));
|
||||
}
|
||||
},
|
||||
trigger: ["change", "blur"]
|
||||
}
|
||||
],
|
||||
mobile: [
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (!value) {
|
||||
// 如果值为空,直接通过校验
|
||||
callback();
|
||||
} else if (/^[1][345789][0-9]{9}$/.test(value)) {
|
||||
// 手机号格式正确
|
||||
callback();
|
||||
} else if (/^\d+-\d+$/.test(value) && value.length <= 16) {
|
||||
// 座机号格式正确
|
||||
callback();
|
||||
} else {
|
||||
// 格式错误,返回错误信息
|
||||
callback(new Error(value.includes('-') ? '座机号码格式错误' : '手机号码格式错误'));
|
||||
}
|
||||
},
|
||||
trigger: ["change", "blur"]
|
||||
}
|
||||
]
|
||||
// idCard: [
|
||||
// {
|
||||
// validator: (rule, value, callback) => {
|
||||
// if (!value) {
|
||||
// // 如果值为空,直接通过校验
|
||||
// callback();
|
||||
// } else if (/^[1-9]\d{5}(18|19|20)?\d{2}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}(\d|[Xx])$/.test(value)) {
|
||||
// // 18位身份证号码格式正确
|
||||
// callback();
|
||||
// } else if (/^[1-9]\d{7}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// // 15位身份证号码格式正确
|
||||
// callback();
|
||||
// } else if (/^[1-9]\d{5}(18|19|20)?\d{2}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// // 外国人身份证号码格式正确(18位)
|
||||
// callback();
|
||||
// } else if (/^[1-9]\d{7}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// // 外国人身份证号码格式正确(15位)
|
||||
// callback();
|
||||
// } else {
|
||||
// // 格式错误,返回错误信息
|
||||
// callback(new Error("身份证号码格式错误"));
|
||||
// }
|
||||
// },
|
||||
// trigger: ["change", "blur"]
|
||||
// }
|
||||
// ],
|
||||
// mobile: [
|
||||
// {
|
||||
// validator: (rule, value, callback) => {
|
||||
// if (!value) {
|
||||
// // 如果值为空,直接通过校验
|
||||
// callback();
|
||||
// } else if (/^[1][345789][0-9]{9}$/.test(value)) {
|
||||
// // 手机号格式正确
|
||||
// callback();
|
||||
// } else if (/^\d+-\d+$/.test(value) && value.length <= 16) {
|
||||
// // 座机号格式正确
|
||||
// callback();
|
||||
// } else {
|
||||
// // 格式错误,返回错误信息
|
||||
// callback(new Error(value.includes('-') ? '座机号码格式错误' : '手机号码格式错误'));
|
||||
// }
|
||||
// },
|
||||
// trigger: ["change", "blur"]
|
||||
// }
|
||||
// ]
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
@@ -32,10 +32,10 @@ const MEMBER_ALL_CHANGE_INFO = {
|
||||
<el-descriptions-item label="离校日期">{{ viewData.leaveSchoolDate ? moment(viewData.leaveSchoolDate).format("YYYY-MM-DD") : '暂无' }}</el-descriptions-item>
|
||||
|
||||
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
||||
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
||||
<el-descriptions-item label="会员服务卡号">{{ viewData.cardNum }}</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
|
||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<!--<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<el-table v-if="viewData.families&&viewData.families.length"
|
||||
:data="viewData.families" size="mini" border
|
||||
:header-cell-style="{background:'#eff3f6'}"
|
||||
@@ -50,7 +50,7 @@ const MEMBER_ALL_CHANGE_INFO = {
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-empty v-else :image-size="50" description="暂无家庭成员信息"></el-empty>
|
||||
</el-descriptions-item>
|
||||
</el-descriptions-item>-->
|
||||
<el-descriptions-item label="个人简况" :span="3">
|
||||
<template slot="label">个人简况</template>
|
||||
<div v-if="viewData.vita" class="text-left" v-html="viewData.vita"></div>
|
||||
|
||||
@@ -234,52 +234,52 @@ const MEMBER_CHANGE = {
|
||||
trigger: ["change", "blur"]
|
||||
}
|
||||
],
|
||||
idCard: [
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (!value) {
|
||||
// 如果值为空,直接通过校验
|
||||
callback();
|
||||
} else if (/^[1-9]\d{5}(18|19|20)?\d{2}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}(\d|[Xx])$/.test(value)) {
|
||||
// 18位身份证号码格式正确
|
||||
callback();
|
||||
} else if (/^[1-9]\d{7}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// 15位身份证号码格式正确
|
||||
callback();
|
||||
} else if (/^[1-9]\d{5}(18|19|20)?\d{2}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// 外国人身份证号码格式正确(18位)
|
||||
callback();
|
||||
} else if (/^[1-9]\d{7}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// 外国人身份证号码格式正确(15位)
|
||||
callback();
|
||||
} else {
|
||||
// 格式错误,返回错误信息
|
||||
callback(new Error("身份证号码格式错误"));
|
||||
}
|
||||
},
|
||||
trigger: ["change", "blur"]
|
||||
}
|
||||
],
|
||||
mobile: [
|
||||
{
|
||||
validator: (rule, value, callback) => {
|
||||
if (!value) {
|
||||
// 如果值为空,直接通过校验
|
||||
callback();
|
||||
} else if (/^[1][345789][0-9]{9}$/.test(value)) {
|
||||
// 手机号格式正确
|
||||
callback();
|
||||
} else if (/^\d+-\d+$/.test(value) && value.length <= 16) {
|
||||
// 座机号格式正确
|
||||
callback();
|
||||
} else {
|
||||
// 格式错误,返回错误信息
|
||||
callback(new Error(value.includes('-') ? '座机号码格式错误' : '手机号码格式错误'));
|
||||
}
|
||||
},
|
||||
trigger: ["change", "blur"]
|
||||
}
|
||||
],
|
||||
// idCard: [
|
||||
// {
|
||||
// validator: (rule, value, callback) => {
|
||||
// if (!value) {
|
||||
// // 如果值为空,直接通过校验
|
||||
// callback();
|
||||
// } else if (/^[1-9]\d{5}(18|19|20)?\d{2}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}(\d|[Xx])$/.test(value)) {
|
||||
// // 18位身份证号码格式正确
|
||||
// callback();
|
||||
// } else if (/^[1-9]\d{7}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// // 15位身份证号码格式正确
|
||||
// callback();
|
||||
// } else if (/^[1-9]\d{5}(18|19|20)?\d{2}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// // 外国人身份证号码格式正确(18位)
|
||||
// callback();
|
||||
// } else if (/^[1-9]\d{7}((0[1-9])|(10|11|12))(([0|1|2][0-9])|10|20|30|31)\d{3}$/.test(value)) {
|
||||
// // 外国人身份证号码格式正确(15位)
|
||||
// callback();
|
||||
// } else {
|
||||
// // 格式错误,返回错误信息
|
||||
// callback(new Error("身份证号码格式错误"));
|
||||
// }
|
||||
// },
|
||||
// trigger: ["change", "blur"]
|
||||
// }
|
||||
// ],
|
||||
// mobile: [
|
||||
// {
|
||||
// validator: (rule, value, callback) => {
|
||||
// if (!value) {
|
||||
// // 如果值为空,直接通过校验
|
||||
// callback();
|
||||
// } else if (/^[1][345789][0-9]{9}$/.test(value)) {
|
||||
// // 手机号格式正确
|
||||
// callback();
|
||||
// } else if (/^\d+-\d+$/.test(value) && value.length <= 16) {
|
||||
// // 座机号格式正确
|
||||
// callback();
|
||||
// } else {
|
||||
// // 格式错误,返回错误信息
|
||||
// callback(new Error(value.includes('-') ? '座机号码格式错误' : '手机号码格式错误'));
|
||||
// }
|
||||
// },
|
||||
// trigger: ["change", "blur"]
|
||||
// }
|
||||
// ],
|
||||
cardNum: [{ required: false, message: "请填写会员服务卡卡号", trigger: ["change", "blur"] },
|
||||
{ pattern: /^\d{19}$/, message: "会员服务卡卡号必须为19位数字", trigger: ["change", "blur"] }]
|
||||
},
|
||||
@@ -381,6 +381,7 @@ const MEMBER_CHANGE = {
|
||||
mobile,
|
||||
email,
|
||||
families,
|
||||
cardNum,
|
||||
vita
|
||||
} = this.user
|
||||
|
||||
@@ -391,6 +392,7 @@ const MEMBER_CHANGE = {
|
||||
this.$set(this.formData, "sex", sex)
|
||||
this.$set(this.formData, "member", member === 1)
|
||||
this.$set(this.formData, "welfareMember", welfareMember === 1)
|
||||
this.$set(this.formData, "cardNum", cardNum)
|
||||
this.$set(this.formData, "idCard", idCard)
|
||||
this.$set(this.formData, "nation", nation)
|
||||
this.$set(this.formData, "political", political)
|
||||
@@ -418,7 +420,7 @@ const MEMBER_CHANGE = {
|
||||
},
|
||||
style: /* language=CSS */ `
|
||||
.el-descriptions-item__label {
|
||||
width: 15% !important;
|
||||
/*width: 15% !important;*/
|
||||
text-align: center !important;
|
||||
}
|
||||
`
|
||||
|
||||
@@ -33,10 +33,10 @@ const MEMBER_CHANGE_AUDIT_INFO = {
|
||||
<el-descriptions-item label="离校日期">{{ viewData.leaveSchoolDate ? moment(viewData.leaveSchoolDate).format("YYYY-MM-DD") : '暂无' }}</el-descriptions-item>
|
||||
|
||||
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
||||
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
||||
<el-descriptions-item label="会员服务卡号">{{ viewData.cardNum }}</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
|
||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<!--<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<el-table v-if="viewData.families&&viewData.families.length"
|
||||
:data="viewData.families" size="mini" border
|
||||
:header-cell-style="{background:'#eff3f6'}"
|
||||
@@ -51,7 +51,7 @@ const MEMBER_CHANGE_AUDIT_INFO = {
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-empty v-else :image-size="50" description="暂无家庭成员信息"></el-empty>
|
||||
</el-descriptions-item>
|
||||
</el-descriptions-item>-->
|
||||
<el-descriptions-item label="个人简况" :span="3">
|
||||
<template slot="label">个人简况</template>
|
||||
<div v-if="viewData.vita" class="text-left" v-html="viewData.vita"></div>
|
||||
|
||||
@@ -33,10 +33,10 @@ const MEMBER_INFO = {
|
||||
<el-descriptions-item label="离校日期">{{ viewData.leaveSchoolDate ? moment(viewData.leaveSchoolDate).format("YYYY-MM-DD") : '暂无' }}</el-descriptions-item>
|
||||
|
||||
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
||||
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
||||
<el-descriptions-item label="会员服务卡号">{{ viewData.cardNum }}</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
|
||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<!--<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
<el-table v-if="viewData.families&&viewData.families.length"
|
||||
:data="viewData.families" size="mini" border
|
||||
:header-cell-style="{background:'#eff3f6'}"
|
||||
@@ -51,7 +51,7 @@ const MEMBER_INFO = {
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-empty v-else :image-size="50" description="暂无家庭成员信息"></el-empty>
|
||||
</el-descriptions-item>
|
||||
</el-descriptions-item>-->
|
||||
<el-descriptions-item label="个人简况" :span="3">
|
||||
<template slot="label">个人简况</template>
|
||||
<div v-if="viewData.vita" class="text-left" v-html="viewData.vita"></div>
|
||||
|
||||
@@ -29,7 +29,7 @@ const USER_CHANGE_INFO = {
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
|
||||
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
||||
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
||||
<el-descriptions-item label="会员服务卡号">{{ viewData.cardNum }}</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
|
||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||
|
||||
@@ -303,6 +303,39 @@ layout("/layouts/platform.html"){
|
||||
<todo class="todo-grid grid-item"></todo>
|
||||
<user-info class="user-grid grid-item"></user-info>
|
||||
</div>
|
||||
|
||||
|
||||
<el-dialog :visible.sync="editUserDialog"
|
||||
:show-close="true"
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
width="40%"
|
||||
title="会员服务卡信息">
|
||||
<el-form :model="editUserData" :rules="editUserRules" label-width="120px" ref="editUserForm">
|
||||
<div style="margin:-20px 0 15px 80px">
|
||||
<span style="color: red;font-size: 15px">请您完善会员服务卡信息,提交后将不会弹出此页面</span>
|
||||
</div>
|
||||
<el-form-item prop="loginname" label="工号">
|
||||
<el-input type="text" maxlength="18"
|
||||
value="${@shiro.getPrincipalProperty('loginname')}"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop="username" label="姓名">
|
||||
<el-input type="text" maxlength="18"
|
||||
value="${@shiro.getPrincipalProperty('username')}"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop="cardNum" label="会员服务卡卡号">
|
||||
<el-input type="text" maxlength="19"
|
||||
placeholder="请输入会员服务卡卡号"
|
||||
oninput="value = value.replace(/\s/g, '')"
|
||||
v-model.trim="editUserData.cardNum"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<!-- <el-button @click="editDialogVisible = false">取 消</el-button>-->
|
||||
<el-button type="primary" @click="doEditUser">确 定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
|
||||
</div>
|
||||
<script>
|
||||
<!--#include("userInfo.js"){}#-->
|
||||
@@ -328,10 +361,43 @@ layout("/layouts/platform.html"){
|
||||
activityOptions: [],
|
||||
processInstanceOptions: [],
|
||||
|
||||
icon: "alipay"
|
||||
icon: "alipay",
|
||||
|
||||
editUserDialog: false,
|
||||
editUserData: {},
|
||||
editUserRules: {
|
||||
cardNum: [{required: true, message: '请填写会员服务卡卡号', trigger: ['blur', 'change']}],
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
async judgeIdCard(){
|
||||
const resp = await $.get('/platform/sys/user/judgeIdCard')
|
||||
if (resp.code === 0 && resp.data > 0){
|
||||
this.editUserDialog = true
|
||||
}
|
||||
},
|
||||
async doEditUser(){
|
||||
this.$refs["editUserForm"].validate(async (valid) => {
|
||||
if (valid) {
|
||||
const confirm = await this.$confirm('请确保会员服务卡信息无误后点击确定,是否确定?', '提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
})
|
||||
if (confirm === "confirm") {
|
||||
const resp = await $.post('/platform/sys/user/doEditUser',this.editUserData)
|
||||
if (resp.code === 0){
|
||||
this.editUserDialog = false
|
||||
this.$message.success(resp.msg)
|
||||
} else {
|
||||
this.$message.error(resp.msg)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
},
|
||||
listQuickEntry() {
|
||||
$.post("/platform/home/listQuickEntry").then((res) => {
|
||||
if (res.code === 0) {
|
||||
@@ -363,7 +429,8 @@ layout("/layouts/platform.html"){
|
||||
})
|
||||
}
|
||||
},
|
||||
created() {
|
||||
async created() {
|
||||
await this.judgeIdCard()
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user