销售记录相关的函数(增改查)

销售记录的函数
1.销售记录的创建,函数api
Fx.work.createSalesRecord("hello", [[object_api_name : "AccountObj", id : "4d79c3068aca42b28aebbc98223e8bed"]], [users : [ "1025"]])
2. 销售记录创建,
//从对象图片下获取销售记录的图片 List imageData = [] if( context.data.field_MBTo1__c ){ List images = context.data.field_MBTo1__c as List images.each{ item -> Map image = [:] image.put('path', item['path']) image.put('name', item['filename']) image.put('size', item['size']) imageData.add(image) } } //从对象数据下获取附件 List attachmentData = [] if( context.data.field_tOD2p__c ){ List attachments = context.data.field_tOD2p__c as List attachments.each{ item -> Map image = [:] image.put('path', item["path"]) image.put('name', item["filename"]) image.put('size', item["size"]) attachmentData.add(image) } } Map objectData = [ "active_record_content": [ "text": "test", "attachments": attachmentData, "images": imageData ], //标准字段,key是APIName value List 里面是数据id,这个不能为空,且必须填写 "related_object": [ "AccountObj": [ "5f1b9c3d5271cf0001006ae6" ] ], //标准字段,抄送范围 人员部门里面都是List<String>,数据需要有key cc_range 其他可以为空 "cc_range": [ "employees":["1001"], "departments":["1000"], //抄送的合作伙伴 ,key是外部企业id value List<String> 外部合作负责人的id "partners":["300002880":["308142445","308142447"]] ], "owner":["1001"], //自定义字段 "field_xx__c":"222", "active_record_type": "81d64447197d418d80e1969e6f567eb5" ] Fx.log.info(objectData) //销售记录比较特殊,负责人无法更改,需要增加一个属性,在代码中指定创建人 ActionAttribute attribute = ActionAttribute.build { specifyCreatedBy = true } def createResult = Fx.object.create("ActiveRecordObj", objectData, null, attribute) if(createResult[0]){ Fx.log.info("创建销售记录失败,原因为 : " + createResult[2]) }else{ Fx.log.info("创建成功") }
3. 销售记录查询动态关联
APIResult ret = Fx.object.find("ActiveRecordObj", //销售记录的apiname FQLAttribute.builder() .columns(["_id", "name"]) //返回的数据id .queryTemplate( QueryTemplate.AND( ["related_api_names":Operator.EQ("AccountObj")],//要查的关联对象的apiname ["related_object_data":Operator.IN(["_id","635202caef27f300011b1c3a"])]//要查的关联的数据id,第一个“_id”是固定写法 )) .build(), SelectAttribute.builder() .build()); if(ret.isError()){ log.info(ret.message()); } log.info(ret.data)
4. 销售记录动态关联的更新
//map是每个关联对象的apiname和数据id的列表的键值对 Map objectMap = ["AccountObj":["6375b210be821e00015daf24"], "object_4pJ0h__c":["636ce270f5c0b30001605076","636ce20af5c0b300015fe8a3"]] def (Boolean error,Map data,String errorMessage) = Fx.object.update("ActiveRecordObj","6359dd60b1fa330001fcd856",["related_object":objectMap],false) log.info(data) log.info(errorMessage)
2023-02-13
0 0