package com.malk.huagao.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.malk.huagao.entity.*;
import com.malk.huagao.mapper.KdYdReceivableDetailMapper;
import com.malk.huagao.mapper.KdYdReceivableMapper;
import com.malk.huagao.mapper.KdYdZpDetailMapper;
import com.malk.huagao.mapper.KdYdZpMapper;
import com.malk.huagao.service.IKdYdZpService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.malk.server.aliwork.YDConf;
import com.malk.server.aliwork.YDParam;
import com.malk.server.dingtalk.DDR_New;
import com.malk.service.aliwork.YDClient;
import com.malk.utils.UtilMap;
import org.slf4j.MDC;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.List;
import java.util.Map;
/**
*
* 服务实现类
*
*
* @author LQY
* @since 2025-10-16
*/
@Service
public class KdYdZpServiceImpl extends ServiceImpl implements IKdYdZpService {
@Autowired
private YDClient ydClient;
@Autowired
private KdYdZpMapper kdYdZpMapper;
@Autowired
private KdYdZpDetailMapper kdYdZpDetailMapper;
@Override
public void insertkdYdZp(Map map) {
MDC.put("MDC_KEY_PID", "1003");
String formInstId = UtilMap.getString(map, "formInstId");
String type = UtilMap.getString(map, "type");
if ("3".equals(type)) {
String bm = UtilMap.getString(map, "bm");
KdYdZp kdYdZp = new KdYdZp();
kdYdZp.setOperationType("3");
kdYdZp.setSyncStatus("0");
kdYdZpMapper.update(kdYdZp, new LambdaQueryWrapper().eq(KdYdZp::getDjbh, bm));
return; // 或者根据你的业务逻辑返回相应的结果
}
DDR_New ddrNew = ydClient.queryData(YDParam.builder()
.formInstId(formInstId)
.build(), YDConf.FORM_QUERY.retrieve_id);
Map formData = ddrNew.getFormData();
String djlx = UtilMap.getString(formData, "radioField_mg3cexkm");
// long receivableId = UtilMap.getLong(formData, "textField_mgt4w4ip");
String kh = UtilMap.getString(formData, "textField_mhn5h4mo");
String kpfs = UtilMap.getString(formData, "selectField_mg3cexke");
String fph = UtilMap.getString(formData, "textField_mejmml3a");
LocalDateTime ywrq = parseTimestamp(UtilMap.getString(formData, "dateField_mejmml39"));
String bb = UtilMap.getString(formData, "selectField_mg3fuqvn");
String bz = UtilMap.getString(formData, "textareaField_mejmml3e");
String djbh = UtilMap.getString(formData, "serialNumberField_mhn4661d");
String spdzyx = UtilMap.getString(formData, "textField_mejmml3d");
String dddjbh = UtilMap.getString(formData, "textField_mg3cexkf");
String ysddjbh = UtilMap.getString(formData, "textField_mejmml3k");
String jshjstr = UtilMap.getString(formData, "numberField_mejmml38");
BigDecimal jshj = toBigDecimal(jshjstr);
List