版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Mj_kk/article/details/81163187
最近在写一个招聘的微信小程序,老板提出,需要一个hr解绑公司功能。
此项目 微信一键登录,分公司和个人身份,可相互切换,公司和个人拥有一个共同主表,个人信息表(personal),
里面字段有:公司编号(cp_id ) 、登录身份(ps_state)、userid,所以只要获取两个userid,进行操作就行,代码如下:
create proc [storedName](
@uid int , --解绑人userid
@userid int --交接人userid
)
as
declare @cp_id int=0 --公司id
declare @err int=0 --错误代码
begin transaction --开启事务
select @cp_id=cp_id from personal where userid=@uid
set @err= @@rowcount --执行完后保存受影响的行数至变量
--交接人绑定公司
update personal set cp_id=@cp_id ,ps_state=1 where userid=@userid
set @err= @@rowcount
--解绑人清除绑定
update personal set cp_id=0,ps_state=0 where userid=@uid
set @err= @@rowcount
--判断事务的提交或者回滚
if @err<=0
begin rollback transaction
select -1 --设置操作结果错误标识
end else
begin commit transaction
--查询重新绑定后的数据
select cp_id,userid,ps_state,(select rs_id from resume where ps_id=per.ps_id ) rs_id from personal per where userid=@userid
end