@@ -351,6 +351,7 @@ <h5><span data-i18n="resources.text_featureToDelete"></span>:</h5>
351351 var container = document . getElementById ( 'popup' ) ;
352352 var content = document . getElementById ( 'popup-content' ) ;
353353 var isChanged = false ;
354+ var currentAddFeature = null ;
354355 getDomains ( currentDataset ) ;
355356 var overlayPopup = new ol . Overlay ( {
356357 element : container ,
@@ -869,6 +870,7 @@ <h5><span data-i18n="resources.text_featureToDelete"></span>:</h5>
869870 } ) ;
870871 console . log ( 'properties' , properties ) ;
871872 currentFeature . data . properties = properties ;
873+ currentAddFeature . setProperties ( properties ) ;
872874 var olFeature = new ol . format . GeoJSON ( ) . readFeature ( currentFeature . data ) ;
873875 if ( ! olFeature . getId ( ) ) {
874876 datasetInfoList [ currentDataset ] . uniqueId ++ ;
@@ -935,6 +937,8 @@ <h5><span data-i18n="resources.text_featureToDelete"></span>:</h5>
935937 } ) ;
936938 editFeaturesService . editFeatures ( addFeatureParams , function ( serviceResult ) {
937939 if ( serviceResult . result . succeed ) {
940+ // currentSource.removeFeature(currentAddFeature);
941+ // currentSource.addFeature(currentFeature.origin);
938942 widgets . alert . showAlert ( isUpdate ? '更新要素成功' : '新增要素成功' , true ) ;
939943 }
940944 } ) ;
@@ -970,8 +974,6 @@ <h5><span data-i18n="resources.text_featureToDelete"></span>:</h5>
970974 function startSelect ( multi = false ) {
971975 clearInteraction ( ) ;
972976 select = new ol . interaction . Select ( {
973- wrapX : false ,
974- multi : true ,
975977 style : new ol . style . Style ( {
976978 fill : new ol . style . Fill ( {
977979 color : [ 90 , 90 , 90 , 0.9 ]
@@ -991,7 +993,8 @@ <h5><span data-i18n="resources.text_featureToDelete"></span>:</h5>
991993 select . on ( 'select' , function ( e ) {
992994 isChanged = true ;
993995 var feature = e . selected [ 0 ] ;
994- if ( feature ) {
996+ isModifyFeature = feature && feature . getProperties ( ) . features && feature . getProperties ( ) . geometries ;
997+ if ( feature && ! isModifyFeature ) {
995998 if ( status == 'DELETE' ) {
996999 var props = new ol . format . GeoJSON ( ) . writeFeature ( feature ) ;
9971000 props = JSON . parse ( props ) ;
@@ -1076,6 +1079,7 @@ <h5><span data-i18n="resources.text_featureToDelete"></span>:</h5>
10761079 } ) ;
10771080 draw . on ( 'drawend' , function ( e ) {
10781081 if ( e . feature ) {
1082+ currentAddFeature = e . feature ;
10791083 map . removeOverlay ( overlayPopup ) ;
10801084 var props = new ol . format . GeoJSON ( ) . writeFeature ( e . feature ) ;
10811085 props = JSON . parse ( props ) ;
0 commit comments