if (jsonObject.get("department").equals(rongtongDept)) { summaryId = flowFactory.sendCollaboration(LOGIN_NAME, rongtongCode, null, transOrderGoodsJsonToFormExport(jsonObject, rongtongCode), null, "0", null); } else if (jsonObject.get("department").equals(neijiangDept)) { summaryId = flowFactory.sendCollaboration(LOGIN_NAME, neijiangCode, null, transOrderGoodsJsonToFormExport(jsonObject, neijiangCode), null, "0", null); }else if (jsonObject.get("department").equals(jiangyouDept)) { summaryId = flowFactory.sendCollaboration(LOGIN_NAME, jiangyouCode, null, transOrderGoodsJsonToFormExport(jsonObject, jiangyouCode), null, "0", null); }else if (jsonObject.get("department").equals(dept)) { summaryId = flowFactory.sendCollaboration(LOGIN_NAME, purchaseRequestCode, null, transOrderGoodsJsonToFormExport(jsonObject, purchaseRequestCode), null, "0", null); }else if (jsonObject.get("department").equals(dept2)) { summaryId = flowFactory.sendCollaboration(LOGIN_NAME, purchaseRequestCode2, null, transOrderGoodsJsonToFormExport(jsonObject, purchaseRequestCode2), null, "0", null); } 把这段代码改成swich的模式
时间: 2024-03-16 20:46:19 浏览: 13
以下是使用switch语句重写的代码:
```
String department = jsonObject.get("department");
String summaryId = "";
String code = "";
String formExport = transOrderGoodsJsonToFormExport(jsonObject, code);
switch (department) {
case rongtongDept:
code = rongtongCode;
break;
case neijiangDept:
code = neijiangCode;
break;
case jiangyouDept:
code = jiangyouCode;
break;
case dept:
code = purchaseRequestCode;
break;
case dept2:
code = purchaseRequestCode2;
break;
}
summaryId = flowFactory.sendCollaboration(LOGIN_NAME, code, null, formExport, null, "0", null);
```
相关问题
public static final String purchaseRequestCode = AppContext.getSystemProperty("srmjc.purchaseRequisitions"); public static final String purchaseRequestCode2 = AppContext.getSystemProperty("srmjc.purchaseRequisitions1"); //融通模板编号 public static final String rongtongCode = AppContext.getSystemProperty("srmjc.rongtong"); //内江模板编号 public static final String neijiangCode = AppContext.getSystemProperty("srmjc.neijiang"); //江油模板编号 public static final String jiangyouCode = AppContext.getSystemProperty("srmjc.jiangyou"); public static final String rongtongDept = AppContext.getSystemProperty("srmjc.rongtongDept"); public static final String neijiangDept = AppContext.getSystemProperty("srmjc.neijiangDept"); public static final String jiangyouDept = AppContext.getSystemProperty("srmjc.jiangyouDept"); String department = jsonObject.get("department").toString(); String summaryId = ""; String code = ""; String formExport = transOrderGoodsJsonToFormExport(jsonObject, code).toString(); switch (department) { case rongtongDept: code = rongtongCode; break; case neijiangDept: code = neijiangCode; break; case jiangyouDept: code = jiangyouCode; break; case dept: code = purchaseRequestCode; break; case dept2: code = purchaseRequestCode2; break; } summaryId = flowFactory.sendCollaboration(LOGIN_NAME, code, null, formExport, null, "0", null); 这样代码有哪些问题 并改正
这段代码的问题在于,在switch语句之前的代码块中,变量code被使用了,但是此时它还没有被赋值。因此,需要将switch语句放在变量code赋值之后。
另外,还有几个变量(如dept和dept2)没有在代码中定义,需要根据实际情况进行定义。
修改后的代码如下:
```
public static final String purchaseRequestCode = AppContext.getSystemProperty("srmjc.purchaseRequisitions");
public static final String purchaseRequestCode2 = AppContext.getSystemProperty("srmjc.purchaseRequisitions1");
//融通模板编号
public static final String rongtongCode = AppContext.getSystemProperty("srmjc.rongtong");
//内江模板编号
public static final String neijiangCode = AppContext.getSystemProperty("srmjc.neijiang");
//江油模板编号
public static final String jiangyouCode = AppContext.getSystemProperty("srmjc.jiangyou");
public static final String rongtongDept = AppContext.getSystemProperty("srmjc.rongtongDept");
public static final String neijiangDept = AppContext.getSystemProperty("srmjc.neijiangDept");
public static final String jiangyouDept = AppContext.getSystemProperty("srmjc.jiangyouDept");
String department = jsonObject.get("department").toString();
String summaryId = "";
String code = "";
String formExport = transOrderGoodsJsonToFormExport(jsonObject, code).toString();
//根据实际情况定义dept和dept2
String dept = "dept";
String dept2 = "dept2";
//先赋值再使用
switch (department) {
case rongtongDept:
code = rongtongCode;
break;
case neijiangDept:
code = neijiangCode;
break;
case jiangyouDept:
code = jiangyouCode;
break;
case dept:
code = purchaseRequestCode;
break;
case dept2:
code = purchaseRequestCode2;
break;
}
summaryId = flowFactory.sendCollaboration(LOGIN_NAME, code, null, formExport, null, "0", null);
```
jsonObject.map("reviewStatus",1); Convert.toInt(jsonObject.get("reviewStatus")==1 结果为什么是false
根据你提供的代码,我猜测你使用的是Java语言。在Java中,使用`==`来比较两个对象是否相等,实际上是比较它们在内存中的地址是否相同。而`jsonObject.get("reviewStatus")`返回的是一个`Object`类型的对象,因此比较结果为`false`。
要比较两个对象的值是否相等,可以使用`equals()`方法。在本例中,可以将`jsonObject.get("reviewStatus")`强制转换为`Integer`类型,然后调用`equals()`方法进行比较,代码如下:
```
Integer reviewStatus = (Integer) jsonObject.get("reviewStatus");
boolean result = reviewStatus.equals(1);
```
这样就可以得到正确的比较结果了。