odoo修改同步字段
continuous-integration/drone/push Build is passing Details

沃森川job同步飞书
YXY 1 year ago
parent 8c26e8c179
commit 1924aba43e

@ -1,5 +1,6 @@
package com.ruoyi.quartz.task.odoo;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.enums.TableRelationTypeEnum;
import com.ruoyi.common.utils.DateUtils;
@ -60,15 +61,22 @@ public class AccountMoveLineJob extends OdooAbstrackob {
protected Map<String, Object> buildLarkBodyMap(JSONObject date) {
Map<String, Object> map = new HashMap<>();
map.put("id",date.getString("id"));
map.put("partner_id",date.getString("partner_id"));
JSONArray partnerArr = parseJsonArray(date.getString("partner_id"),2);
map.put("partner_id",partnerArr.getString(0));
map.put("partner_name",partnerArr.getString(1));
map.put("date",date.getString("date"));
map.put("quantity",date.getString("quantity"));
map.put("product_id",date.getString("product_id"));
JSONArray productArr = parseJsonArray(date.getString("product_id"),2);
map.put("product_id",productArr.getString(0));
map.put("product_name",productArr.getString(1));
map.put("price_unit",date.getString("price_unit"));
map.put("company_id",date.getString("company_id"));
JSONArray companyArr = parseJsonArray(date.getString("company_id"),2);
map.put("company_id",companyArr.getString(0));
map.put("company_name",companyArr.getString(1));
return map;
}
@Override
protected TableRelationTypeEnum syncLarkType() {
return TableRelationTypeEnum.SYNC_ODOO_ACCOUNT_MOVE_LINE;

@ -1,5 +1,6 @@
package com.ruoyi.quartz.task.odoo;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.lark.oapi.service.bitable.v1.model.CreateAppTableRecordRespBody;
import com.ruoyi.common.enums.AppType;
@ -226,6 +227,21 @@ public abstract class OdooAbstrackob {
//获取待同步飞书表格信息
protected abstract TableRelationTypeEnum syncLarkType();
protected JSONArray parseJsonArray(String value, int count){
JSONArray jsonArray = new JSONArray();
try {
jsonArray = JSONArray.parseArray(value);
for (int i= jsonArray.size();i<count;i++){
jsonArray.add(null);
}
}catch (Exception e){
for (int i= 0;i<count;i++){
jsonArray.add(null);
}
}
return jsonArray;
}
public List<Object> getDate(OdooContext odooContext, Map<String, Integer> pageMap, List<String> errorList) {
try {
XmlRpcClient models = odooContext.getModels();

@ -1,5 +1,6 @@
package com.ruoyi.quartz.task.odoo;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.enums.TableRelationTypeEnum;
import lombok.extern.slf4j.Slf4j;
@ -50,7 +51,7 @@ public class ProductProductJob extends OdooAbstrackob {
// }};
return new HashMap() {{
put("fields", Arrays.asList("id","default_code", "name", "description_purchase"
, "qty_available", "incoming_qty", "packaging_ids", "total_cost", "categ_id", "free_qty"));
, "qty_available", "incoming_qty", "packaging_ids", "standard_price", "categ_id"));
}};
}
@ -63,9 +64,11 @@ public class ProductProductJob extends OdooAbstrackob {
map.put("description_purchase",date.getString("description_purchase"));
map.put("qty_available",date.getString("qty_available"));
map.put("incoming_qty",date.getString("incoming_qty"));
map.put("packaging_ids",date.getString("packaging_ids"));
map.put("total_cost",date.getString("total_cost"));
map.put("categ_id",date.getString("categ_id"));
JSONArray packagingArr = parseJsonArray(date.getString("packaging_ids"),1);
map.put("packaging_ids",packagingArr.getString(0));
map.put("standard_price",date.getString("standard_price"));
JSONArray categArr = parseJsonArray(date.getString("categ_id"),2);
map.put("categ_id",categArr.getString(1));
map.put("free_qty",date.getString("free_qty"));
return map;
}

Loading…
Cancel
Save