1414
1515import com .tinyengine .it .common .base .Result ;
1616import com .tinyengine .it .common .context .LoginUserContext ;
17+ import com .tinyengine .it .common .enums .Enums ;
1718import com .tinyengine .it .mapper .BlockMapper ;
1819import com .tinyengine .it .mapper .PageMapper ;
1920import com .tinyengine .it .mapper .UserMapper ;
@@ -44,25 +45,29 @@ public class CanvasServiceImpl implements CanvasService {
4445
4546 @ Override
4647 public Result <CanvasDto > lockCanvas (Integer id , String state , String type ) {
47- String occupier ;
48+ String occupier = null ;
4849 // needTODO 先试用mock数据,后续添加登录及权限后从session获取,
4950 User user = userMapper .queryUserById (loginUserContext .getLoginUserId ());
5051 if (user == null ) {
5152 user = new User ();
5253 user .setId (loginUserContext .getLoginUserId ());
5354 }
5455 CanvasDto canvasDto = new CanvasDto ();
56+ String value = state .equals (Enums .CanvasEditorState .OCCUPY .getValue ()) ? user .getId () : null ;
57+ User occupierValue = state .equals (Enums .CanvasEditorState .OCCUPY .getValue ()) ? user : null ;
5558 if ("page" .equals (type )) {
5659 Page page = pageMapper .queryPageById (id );
57- occupier = page .getOccupier ().getId ();
60+ if (page .getOccupier () != null ) {
61+ occupier = page .getOccupier ().getId ();
62+ }
5863 Boolean isCaDoIt = isCanDoIt (occupier , user );
5964 if (isCaDoIt ) {
6065 Page updatePage = new Page ();
6166 updatePage .setId (id );
62- updatePage .setOccupierBy (user . getId () );
67+ updatePage .setOccupierBy (value );
6368 pageMapper .updatePageById (updatePage );
6469 canvasDto .setOperate ("success" );
65- canvasDto .setOccupier (user );
70+ canvasDto .setOccupier (occupierValue );
6671 return Result .success (canvasDto );
6772 }
6873 } else {
@@ -72,15 +77,15 @@ public Result<CanvasDto> lockCanvas(Integer id, String state, String type) {
7277 if (isCaDoIt ) {
7378 Block updateBlock = new Block ();
7479 updateBlock .setId (id );
75- updateBlock .setOccupierBy (user . getId () );
80+ updateBlock .setOccupierBy (value );
7681 blockMapper .updateBlockById (updateBlock );
7782 canvasDto .setOperate ("success" );
78- canvasDto .setOccupier (user );
83+ canvasDto .setOccupier (occupierValue );
7984 return Result .success (canvasDto );
8085 }
8186 }
8287 canvasDto .setOperate ("failed" );
83- canvasDto .setOccupier (user );
88+ canvasDto .setOccupier (occupierValue );
8489 return Result .success (canvasDto );
8590 }
8691
0 commit comments