Merged PR 85: BUG600:ルックアップのエラーメッセージ表示障害

BUG600:ルックアップのエラーメッセージ表示障害修正。
障害原因:複数ルックアップの更新先は同一アプリ、エラーメッセージの表示はAPPごとに表示するので、
区別できなくなるため
修正方法:エラーメッセージは更新先のアプリ+キー項目名で特定するように変更する

Related work items: #600
This commit is contained in:
Shohtetsu Ma
2024-08-23 05:48:08 +00:00
committed by Takuto Yoshida(タクト)

View File

@@ -129,10 +129,10 @@ export class AutoLookUpAction implements IAction {
}
const updateRecords = this.convertForLookup(targetRecords,lookUpField,key);
console.log("updateRecords", updateRecords);
this.showSpinnerModel(this.props.lookupField.app);
this.showSpinnerModel(this.props.lookupField.app,lookUpField);
const updateResult = await this.updateLookupTarget(updateRecords);
if(updateResult){
this.showResult(this.props.lookupField.app,updateRecords.length);
this.showResult(this.props.lookupField.app,lookUpField,updateRecords.length);
}
} catch (error) {
this.closeDialog();
@@ -200,7 +200,9 @@ export class AutoLookUpAction implements IAction {
return true;
}catch(error ){
if(error instanceof KintoneAllRecordsError){
this.showError(this.props.lookupField.app,error as KintoneAllRecordsError,updateRecords.length);
this.showError(this.props.lookupField.app,
this.props.lookupField.fields[0],
error as KintoneAllRecordsError,updateRecords.length);
return false;
}else{
throw error;
@@ -218,7 +220,7 @@ export class AutoLookUpAction implements IAction {
* 更新中のダイアログ表示
* @param app
*/
showSpinnerModel = (app:App) => {
showSpinnerModel = (app:App,lookup:Field) => {
let dialog = $("#alcLookupModal");
if(dialog.length===0){
const modalHTML = `<div class="bs-scope">
@@ -230,7 +232,7 @@ export class AutoLookUpAction implements IAction {
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="row" id="app${app.id}">
<div class="row" id="app${app.id}_${lookup.code}">
<div class="spinner-border text-secondary col-1 " role="alert"></div>
<div class="col">${app.name}</div>
</div>
@@ -248,7 +250,7 @@ export class AutoLookUpAction implements IAction {
}else{
const dialogBody=$("#alcLookupModal .modal-body");
const htmlrow=`
<div class="row" id="app${app.id}">
<div class="row" id="app${app.id}_${lookup.code}">
<div class="spinner-border text-secondary col-1 " role="alert">
</div>
<div class="col">${app.name}</div>
@@ -263,8 +265,8 @@ export class AutoLookUpAction implements IAction {
* @param app  更新先アプリ情報
* @param count 更新件数
*/
showResult=(app:App,count:number)=>{
const dialogBody=$(`#alcLookupModal .modal-body #app${app.id}`);
showResult=(app:App,lookup:Field,count:number)=>{
const dialogBody=$(`#alcLookupModal .modal-body #app${app.id}_${lookup.code}`);
const html=` <div class="col-1 text-success">✔</div>
<div class="col">${app.name}</div>
<div class="col">更新件数:${count}件</div>`;
@@ -276,11 +278,11 @@ export class AutoLookUpAction implements IAction {
* @param app  更新先アプリ情報
* @param count 更新件数
*/
showError=(app:App,error:KintoneAllRecordsError,allCount:Number)=>{
showError=(app:App,lookup:Field,error:KintoneAllRecordsError,allCount:Number)=>{
const message=error.error.message;
const proRecords = error.numOfProcessedRecords;
const allRecords=error.numOfAllRecords;
const dialogBody=$(`#alcLookupModal .modal-body #app${app.id}`);
const dialogBody=$(`#alcLookupModal .modal-body #app${app.id}_${lookup.code}`);
const html=`<div class="col-1 text-danger">✖</div>
<div class="col">${app.name}</div>
<div class="col">更新件数:${proRecords}/${allRecords}</div>