|
@@ -3822,17 +3822,7 @@ $(document).ready(() => {
|
|
|
|
|
|
this.changeSheet.bind(spreadNS.Events.SelectionChanged, function (e, info) {
|
|
|
const change = SpreadJsObj.getSelectObject(self.changeSheet);
|
|
|
- if (change.cid === self.curChangeId) { return; }
|
|
|
- self.curChangeId = change.cid;
|
|
|
- if (change.detail) {
|
|
|
- self.loadChangeDetailData();
|
|
|
- } else {
|
|
|
- postData(window.location.pathname + '/change/detail', {cid: change.cid, is_import: change.is_import}, function (result) {
|
|
|
- change.detail = result;
|
|
|
- self.analyzeChange(change);
|
|
|
- self.loadChangeDetailData();
|
|
|
- });
|
|
|
- }
|
|
|
+ self.refreshChangeDetailData(change);
|
|
|
});
|
|
|
this.changes = null;
|
|
|
this.reloadChangeData();
|
|
@@ -3943,6 +3933,8 @@ $(document).ready(() => {
|
|
|
selector: '#' + setting.changeObj.attr('id'),
|
|
|
build: function ($trigger, e) {
|
|
|
const target = SpreadJsObj.safeRightClickSelection($trigger, e, self.changeSpread);
|
|
|
+ const change = self.changes[target.cellTypeHitInfo.row];
|
|
|
+ self.refreshChangeDetailData(change);
|
|
|
return target.hitTestType === spreadNS.SheetArea.viewport || target.hitTestType === spreadNS.SheetArea.rowHeader;
|
|
|
},
|
|
|
items: {
|
|
@@ -3999,10 +3991,25 @@ $(document).ready(() => {
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
- loadChangeDetailData() {
|
|
|
- const change = SpreadJsObj.getSelectObject(this.changeSheet);
|
|
|
+ refreshChangeDetailData(data) {
|
|
|
+ const change = data || SpreadJsObj.getSelectObject(this.changeSheet);
|
|
|
+ if (change.cid === this.curChangeId) return;
|
|
|
+ this.curChangeId = change.cid;
|
|
|
+ const self = this;
|
|
|
+
|
|
|
+ if (change.detail) {
|
|
|
+ self.loadChangeDetailData();
|
|
|
+ } else {
|
|
|
+ postData(window.location.pathname + '/change/detail', {cid: change.cid, is_import: change.is_import}, function (result) {
|
|
|
+ change.detail = result;
|
|
|
+ self.analyzeChange(change);
|
|
|
+ self.loadChangeDetailData();
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ loadChangeDetailData(data) {
|
|
|
+ const change = data || SpreadJsObj.getSelectObject(this.changeSheet);
|
|
|
if (change) {
|
|
|
- console.log(change.bills);
|
|
|
SpreadJsObj.loadSheetData(this.changeBillsSheet, SpreadJsObj.DataType.Data, change.bills);
|
|
|
} else {
|
|
|
SpreadJsObj.loadSheetData(this.changeBillsSheet, SpreadJsObj.DataType.Data, []);
|