lisai17@sina.com 2020-09-18 15:59:07 +08:00
parent ef5b5f0691
commit 03ce4f7d5e
5 changed files with 27 additions and 29 deletions

View File

@ -22,10 +22,10 @@ public class CustomerValidator extends CrudParamValidator {
validateInteger("id", 1, 2147483647, "id", "id 范围 1~2147483647");
}
validateString("name", 1, 128, "name", "name 长度 1~128");
validateString("name", 0, 128, "name", "name 长度 1~128");
validateString("address", 0, 256, "address", "address 长度 0~256");
validateString("phone", 0, 11, "phone", "phone 长度 0~11");
validateString("texpayer_name", 1, 128, "texpayer_name", "texpayer_name 长度 0~128");
validateString("phone", 0, 20, "phone", "phone 长度 0~20");
validateString("texpayer_name", 0, 128, "texpayer_name", "texpayer_name 长度 0~128");
validateString("texpayer_num", 0, 20, "texpayer_num", "texpayer_num 长度 0~20");
validateString("bank_name", 0, 128, "bank_name", "bank_name 长度 0~128");

View File

@ -29,6 +29,7 @@ public class SysuserValidator extends CrudParamValidator {
if ("save".equals(getActionMethodName())) {
validateInIntegerArray("type", chktype, "type", "type 范围 1~4");
validateRegex("role", "[0-9]{2,3}", "role", "role 值错误");
}
validateRegex("phone", StrUtil.regphone, "phone", "phone 必须为手机号格式");
@ -38,13 +39,15 @@ public class SysuserValidator extends CrudParamValidator {
validateInteger("entity_id", 1, 2147483647, "entity_id", "entity_id 范围 1~2147483647");
}
validateRegex("role", "[0-9]{2,3}", "role", "role 值错误");
// 使用 model 更新时model 不能只有主键有值
// 这里用 getActionMethodName 写死,判断是 update 时,才做验证
// 如果确实是需要将主键外的字段置为 null可以在代码生成后删掉这段
if ("edit".equals(getActionMethodName())) {
validateUpdateModel(Sysuser.class, "", true); // 忽略不在model中的字段
if (StrKit.notBlank(c.get("role"))) {
validateRegex("role", "[0-9]{2,3}", "role", "role 值错误");
}
}
}

View File

@ -139,29 +139,31 @@ public class CustomerSyncService extends BaseSyncService {
// 将修改后的对象返回
String[] keys = model._getAttrNames();
for (String key : keys) {
if(model.get(key) != null){
oldobj.set(key, model.get(key));
}
}
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
boolean ret = model.update();
boolean ret = oldobj.update();
if (!ret) {
return false;
}
SyncTask synctask = new SyncTask();
synctask.addUpdateData(model);
synctask.addUpdateData(oldobj);
if (StrKit.notBlank(receiver_name, receiver_phone, receiver_address)) {
CustomerReceiver receiver = CustomerReceiver.dao.findFirst(
"select * from customer_receiver t where t.customer_id = ? limit 1", model.getId());
"select * from customer_receiver t where t.customer_id = ? limit 1", oldobj.getId());
if (receiver == null) {
receiver = new CustomerReceiver();
receiver.setCustomerId(model.getId());
receiver.setCustomerId(oldobj.getId());
receiver.setName(receiver_name);
receiver.setPhone(receiver_phone);
receiver.setAddress(receiver_address);
@ -185,8 +187,8 @@ public class CustomerSyncService extends BaseSyncService {
}
}
return SyncTaskService.me.save(new SyncTask().addUpdateData(oldobj))
&& ModifyLogService.me.save(model, saveold, Enums.DataOpType.UPDATE.getId(), sysuser);
return SyncTaskService.me.save(synctask)
&& ModifyLogService.me.save(oldobj, saveold, Enums.DataOpType.UPDATE.getId(), sysuser);
} catch (Exception e) {
log.error(e.getMessage(), e);
return false;

View File

@ -45,7 +45,9 @@ public class AuthInterceptor implements Interceptor {
add("/orderclustertruck/del");
add("/customer/get");
add("/customer/update");
add("/customer/edit");
add("/sysuser/edit");
}});
}

View File

@ -296,24 +296,15 @@ public class SysuserSyncService extends BaseSyncService {
return Result.failed(false, "按主键未找到对应记录");
}
if (chkobj.getType() == UserTypeEnum.CUSTOMER.getTypeid() && !tokenuser.getId().equals(model.getId())) {
return Result.failed("客户账户只能修改自己的登录信息");
}
// 按手机号查出来的记录,不是当前更新的记录
if (old != null && !old.getId().equals(model.getId())) {
return Result.failed(false, "手机号已存在");
}
BaseModel baseModel = checkEntityId(model);
if (isTreasurer(model.getRole()) || isPresident(model.getRole())) {
if (model.getEntityId() == null) { // 没有从前端获取到 entity_id
model.setEntityId(null); // 如果不设置upate 时,不会更新 entity_id 如果要清空 entity_id 值,就需要手动设置为 null
}
} else {
// 不是财务、经理的时候,按照原来的规则检查
if (baseModel == null) {
return Result.failed(false, "entity_id 未找到对应值");
}
}
// TODO: 修改手机号码,必须重置密码
if (model.getPhone() != null && !model.getPhone().equals(chkobj.getPhone())) {
chkobj.setPassword(getPwdMD5(model.getPhone(), Const.DEFAULT_PASSWORD));
@ -401,7 +392,7 @@ public class SysuserSyncService extends BaseSyncService {
return false;
}
if(StrKit.notBlank(receiver_name, receiver_phone, receiver_address)){
if (StrKit.notBlank(receiver_name, receiver_phone, receiver_address)) {
CustomerReceiver receiver = new CustomerReceiver();
receiver.setCustomerId(model.getId());
receiver.setName(receiver_name);
@ -412,7 +403,7 @@ public class SysuserSyncService extends BaseSyncService {
ret = receiver.save() && ModifyLogService.me.save(receiver, null, Enums.DataOpType.SAVE.getId(), tokenuser);
if(!ret){
if (!ret) {
return false;
}
}
@ -511,7 +502,7 @@ public class SysuserSyncService extends BaseSyncService {
synctask.addUpdateData(chkobj);
synctask.addUpdateData(customer);
if(StrKit.notBlank(receiver_name, receiver_phone, receiver_address)) {
if (StrKit.notBlank(receiver_name, receiver_phone, receiver_address)) {
CustomerReceiver receiver = CustomerReceiver.dao.findFirst(
"select * from customer_receiver t where t.customer_id = ? limit 1", customer.getId());