Bladeren bron

对接e管家资产调拨单接口

wanwei 8 maanden geleden
bovenliggende
commit
70aa3c3315
1 gewijzigde bestanden met toevoegingen van 46 en 2 verwijderingen
  1. 46 2
      src/main/java/fi/fa/webService/DispatchMidController.java

+ 46 - 2
src/main/java/fi/fa/webService/DispatchMidController.java

@@ -235,10 +235,54 @@ public class DispatchMidController implements Serializable {
                 entry1.set("inusedept", map.get("inDeptId"));//调入使用部门
             }
             SaveServiceHelper.save(new DynamicObject[]{dispatch});
+        }//组织内,生成资产变更单
+        else if ("1".equals(dispatchType)) {
+            DynamicObject changeDept = BusinessDataServiceHelper.newDynamicObject("fa_change_dept");
+            //获取配置编码规则生成的编码
+            CodeRuleInfo codeRule = CodeRuleServiceHelper.getCodeRule(changeDept.getDataEntityType().getName(), changeDept, null);
+            String sysCode = CodeRuleServiceHelper.getNumber(codeRule, changeDept);
+            String nckd_card_real_code = jsonObject.getString("nckd_card_real_code");
+            nckd_card_real_code = "A00100101900240800008";
+            //拼接单据编号
+            String firstTenChars = nckd_card_real_code.substring(0, 10);
+            String billno = firstTenChars + sysCode;
+            //单据头
+            changeDept.set("billno", billno);//单据编号
+            changeDept.set("org", map.get("orgId"));//核算组织
+            changeDept.set("changedate", jsonObject.getDate("sendDate"));//记账日期
+            changeDept.set("appliantid", map.get("sendUser"));//变更申请人
+            changeDept.set("remark", jsonObject.getString("reason"));//调出原因
+            changeDept.set("sourcetype", "5");//来源方式(5:API生成)
+            changeDept.set("changetype", Long.parseLong("733953285719123968"));//变更类型,默认部门变更
+            changeDept.set("chtypedetail", "1");//变更类型明细默认实物变更1
+            changeDept.set("voucherflag", "A");//记账标识默认无需记账A
+            //制单信息
+            changeDept.set("creator", map.get("sendUser"));//创建人
+            changeDept.set("createtime", jsonObject.getDate("sendDate"));//创建时间
+            changeDept.set("modifier", map.get("recieveUser"));//修改人
+            changeDept.set("modifytime", jsonObject.getDate("sendDate"));//修改时间
+            changeDept.set("auditor", map.get("recieveUser"));//审核人
+            changeDept.set("auditdate", jsonObject.getDate("sendDate"));//审核时间
+            changeDept.set("billstatus", "C");//默认审核
+            //单据体
+            //根据资产编号查询实物卡片
+            QFilter cardFilter = new QFilter("billno", QCP.equals,nckd_card_real_code);
+            DynamicObject[] card = BusinessDataServiceHelper.load("fa_card_real","id",new QFilter[] {cardFilter});
+            for (int c = 0; c < card.length; c++) {
+                DynamicObject cardInfo = BusinessDataServiceHelper.loadSingle(card[c].getPkValue(), card[c].getDynamicObjectType().getName());
+                //创建变更详情分录
+                DynamicObjectCollection entryEntity = changeDept.getDynamicObjectCollection("main_changebillentry");
+                DynamicObject entry1 = entryEntity.addNew();
+                entry1.set("m_realcard", cardInfo);//资产编码
+                entry1.set("m_bef_headusedept", cardInfo.getDynamicObject("headusedept").getLong("id"));//变更前使用部门
+                entry1.set("m_aft_headusedept", map.get("inDeptId"));//变更后使用部门
+                entry1.set("m_bef_headuseperson", cardInfo.getDynamicObject("headuseperson").getLong("id"));//变更前使用人
+                entry1.set("m_aft_headuseperson", map.get("user"));//变更后使用人
+                entry1.set("m_bef_storeplace", cardInfo.getDynamicObject("storeplace").getLong("id"));//变动前存放地点
+            }
+            SaveServiceHelper.save(new DynamicObject[]{changeDept});
         }
 
-        //组织内,生成资产变更单
-
     }
 
     /**