Skip to content

Commit

Permalink
🎨 New a row in the database no longer require to create a relevant doc
Browse files Browse the repository at this point in the history
  • Loading branch information
88250 committed Sep 28, 2023
1 parent d51b336 commit 20cd3c5
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 0 deletions.
41 changes: 41 additions & 0 deletions kernel/model/attribute_view.go
Original file line number Diff line number Diff line change
Expand Up @@ -885,6 +885,47 @@ func removeAttributeViewColumn(operation *Operation) (err error) {
return
}

func (tx *Transaction) doReplaceAttrViewBlock(operation *Operation) (ret *TxErr) {
err := replaceAttributeViewBlock(operation)
if nil != err {
return &TxErr{code: TxErrWriteAttributeView, id: operation.AvID}
}
return
}

func replaceAttributeViewBlock(operation *Operation) (err error) {
attrView, err := av.ParseAttributeView(operation.AvID)
if nil != err {
return
}

for _, keyValues := range attrView.KeyValues {
for _, value := range keyValues.Values {
if value.BlockID == operation.PreviousID {
value.BlockID = operation.NextID
if nil != value.Block {
value.Block.ID = operation.NextID
value.IsDetached = operation.IsDetached
}
}
}
}

for _, v := range attrView.Views {
switch v.LayoutType {
case av.LayoutTypeTable:
for i, rowID := range v.Table.RowIDs {
if rowID == operation.PreviousID {
v.Table.RowIDs[i] = operation.NextID
}
}
}
}

err = av.SaveAttributeView(attrView)
return
}

func (tx *Transaction) doUpdateAttrViewCell(operation *Operation) (ret *TxErr) {
err := updateAttributeViewCell(operation, tx)
if nil != err {
Expand Down
2 changes: 2 additions & 0 deletions kernel/model/transaction.go
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,8 @@ func performTx(tx *Transaction) (ret *TxErr) {
ret = tx.doSetAttrViewColCalc(op)
case "updateAttrViewColNumberFormat":
ret = tx.doUpdateAttrViewColNumberFormat(op)
case "replaceAttrViewBlock":
ret = tx.doReplaceAttrViewBlock(op)
}

if nil != ret {
Expand Down

0 comments on commit 20cd3c5

Please sign in to comment.