商家的注册管理设计

对商家的注册管理设计主要是通过调用商家服务的REST API实现的。

在注册一个商家时,除创建一个商家对象外,还必须为商家创建一个用户,这样商家才能使用这个用户登录商家管理后台。

在商家的查询对象设计中增加两个字段,用来表示商家所属用户的简要信息,代码如下所示:

public class MerchantQo extends PageQo implements Serializable {
private Long id;
private String name;private String email;private String phone;private String address;private String linkman; DateTimeFormat(
pattern ="yyyy-MM-dd HH: mm:ss"
private Date created;
private String userName;private String password;
public MerchantQ0() {}
...
}

其中,userName和l passWord 分别用来表示商家用户的用户名和密码。

这样在新建商家的页面设计new.html 中,就可以使用如下所示的表单设计了:

<form id="saveForm" action=" ./save" method="post">
<table class="addNewInfList">
<tr>
<th>名称</th>
<td width-"240">
<input class="inp-list w-200 clear-mr f-left" type="text"
id="name" name= "name" maxlength="32"/>
<span class="tipstar f-left">*</span></td>
<th>邮箱</th>
<td width-"240">
<input class="inp-list w-200 clear-mr f-left" type="text"
id= "email" name= "email" maxlength="128"/>
</td>
</tr>
<tr>
<th>电话</th>
<td width-"240">
<input class="inp-list w-200 clear-mr f-left" type="text"
id="phone" name="phone" maxlength="32"/>
<span class="tipStar f-left">*</span></td>
<th>地址</th>
<td width="240">
<input class="inp-list w-200 clear-mr f-left" type="text"
id="address" name="address" maxlength="255" />
</td>
</tr>
<tr>
<th>联系人</th><td width="240">
<input class="inp-list w-200 clear-mr f-left" type="text"
id="linkman" name="linkman" maxlength="128"/>
</td>
<th>日期</th><td>
<input onfocus="wdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'})"
type="text" class="inp-list w-200 clear-mr f-left" id="created"
name="created"/>
</td></tr>
<tr>
<th>用户名</th><td width="240">
<input class="inp-list w-200 clear-mr f-left" type="text"
id="userName" name="userName" maxlength="128"/>
<span class="tipstar f-left">*</span></td>
<th>密码</th>
<td width="240">
<input class="inp-list w-200 clear-mr f-left" type="password"
id="password" name="passWord" maxlength="32"/>
<span class="tipStar f-left">*</span></td>
</tr>
</table>
<div class="bottomBtnBox">
<a class="btn-93x38 saveBtn" href="javascript:void (0)">确定</a>
<a class="btn-93x38 backBtn" href="javascript: closeDialog ()">返回</a></div>
</form>

商家用户的用户名和密码可以在创建商家时填写。在完成设计后,创建商家的设计效果如图11-2所示。

平台管理后台与商家菜单资源管理:商家的注册管理设计_平台管理  后台  资源管理

 

当新增商家提交表单时,可通过控制器实现对商家服务MerchantRestService进行远程调用,并检查用户名是否已经被注册,实现代码如下所示:

@Controller
@RequestMapping("/merchant")
public class MerchantController{
private static Logger logger = LoggerFactory.getLogger(MerchantController.class);
@Autowired
private MerchantRestService merchantRestService;cAutowired
private UserRestservice userRestService;
@RequestMapping (value="/save",method = RequestMethod.POST)@ResponseBody
public String save(MerchantQo merchantQo,HttpServletRequest request) throwsException{
String json = userRestService.findByName (merchantQo.getUserName ());UserQo userQo = new Gson().fromJson(json,UserQo.class);
if(userQo != null){
String str = "用户名'" +merchantQo.getUserName() +""已经存在,请重新
输入!";
logger.info(str);return str;
}
String ret = merchantRestService.create (merchantQ0);logger.info("新增="+ ret);
return ret;
}
}

这里,直接使用查询对象 MerchantQo传递参数,商家服务在接收请求后,会创建一个商家和一个商家用户,并默认为其分配管理员角色。

本文给大家讲解的内容是平台管理后台与商家菜单资源管理:商家的注册管理设计
  1. 下篇文章给大家讲解的是平台管理后台与商家菜单资源管理:商家权限及其菜单资源管理设计;
  2. 觉得文章不错的朋友可以转发此文关注小编;
  3. 感谢大家的支持!