Merge pull request #151 from AtarisMio/patch-filter-private-field

过滤private field不翻译
diff --git a/packages/interpret-cli/src/transfer/bean/to-field.ts b/packages/interpret-cli/src/transfer/bean/to-field.ts
index 7574101..12231a5 100644
--- a/packages/interpret-cli/src/transfer/bean/to-field.ts
+++ b/packages/interpret-cli/src/transfer/bean/to-field.ts
@@ -33,7 +33,7 @@
   fieldProps: IJFieldPropers,
   intepretHandle: IntepretHandle,
 ): Promise<PropertySignatureStructure> {
-  log('转换 为属性:%o', fieldProps);
+  log('转换 %s 为属性:%o', fieldName, fieldProps);
 
   let type = await jType2Ts(fieldProps, intepretHandle);
   return {
diff --git a/packages/interpret-cli/src/transfer/bean/to-vo.ts b/packages/interpret-cli/src/transfer/bean/to-vo.ts
index 7f17934..a9664f9 100644
--- a/packages/interpret-cli/src/transfer/bean/to-vo.ts
+++ b/packages/interpret-cli/src/transfer/bean/to-vo.ts
@@ -46,7 +46,9 @@
 
   if (typeDef.typeParams) {
     typeDef.typeParams.forEach(typeParamsItem => {
-      typeParameters.push({name: typeParamsItem.name+" extends { __fields2java?(): any } = any",});
+      typeParameters.push({
+        name: typeParamsItem.name + ' extends { __fields2java?(): any } = any',
+      });
     });
   }
   //获取 方法定义; 或者获取属性定义
@@ -62,21 +64,30 @@
     if (typeDef.fields[fieldName].isArray) {
       filedType = typeDef.fields[fieldName].elementType.name;
     }
+    const regex = new RegExp(
+      `^(get|set)${fieldName[0].toUpperCase()}${fieldName.slice(1)}$`,
+    );
+    if (
+      typeDef.privateFields.indexOf(fieldName) !== -1 && // 在privateField中
+      Object.keys(typeDef.methods || {}).findIndex(n => regex.test(n)) === -1 // 并且没有getter和setter
+    ) {
+      continue; // 跳过不翻译
+    }
 
-      let field = await toField(
-        fieldName,
-        typeDef.fields[fieldName],
-        intepretHandle,
-      );
-      properties.push(field);
-      ctorParams.push({name: field.name, type: field.type});
+    let field = await toField(
+      fieldName,
+      typeDef.fields[fieldName],
+      intepretHandle,
+    );
+    properties.push(field);
+    ctorParams.push({name: field.name, type: field.type});
 
-      let filedItem = typeDef.fields[fieldName];
-      fileds.push({
-        name: fieldName,
-        type: await jType2Ts(filedItem, intepretHandle),
-        filedAst: filedItem,
-      });
+    let filedItem = typeDef.fields[fieldName];
+    fileds.push({
+      name: fieldName,
+      type: await jType2Ts(filedItem, intepretHandle),
+      filedAst: filedItem,
+    });
   }
   //添加构造函数入参interface
   //1.2 生成方法;;