package com.app.hxqh.udoutser;

import psdi.mbo.Mbo;
import psdi.mbo.MboRemote;
import psdi.mbo.MboSet;
import psdi.mbo.MboSetRemote;
import psdi.server.MXServer;
import psdi.util.MXException;

import java.rmi.RemoteException;

/**
 * 委外服务-子表
 * createby liuxq  2023-8-17
 */
public class UdoutserLineMbo extends Mbo implements MboRemote {

    public UdoutserLineMbo(MboSet ms) throws MXException, RemoteException {
        super(ms);
    }

    @Override
    public void add() throws MXException, RemoteException {
        super.add();
    }

    @Override
    public void init() throws MXException {
        super.init();

    }

    @Override
    public void save() throws MXException, RemoteException {
        super.save();
        MboRemote owner = this.getOwner();
        String COIN = owner.getString("COIN");//货币
        if(COIN!=null && !"".equals(COIN)){
            MboSetRemote coinrateSet = MXServer.getMXServer().getMboSet("COINRATE",MXServer.getMXServer().getSystemUserInfo());
            coinrateSet.setWhere("COINRATEID=(SELECT MAX(COINRATEID) FROM COINRATE WHERE DHDMLX='TORMB' AND COINNUM='"+COIN+"') ");
            if(null!=coinrateSet && !coinrateSet.isEmpty()){
                MboRemote mbo = coinrateSet.getMbo(0);
                Double rate = mbo.getDouble("RATE");
                Integer udoutserid = owner.getInt("UDOUTSERID");
                MboSetRemote mboSet = this.getThisMboSet();
                mboSet.setWhere("parentid="+udoutserid+"");
                double YGZJE = mboSet.sum("YGZJE");//预计总金额(本币)的总和
                double FYHJBB = YGZJE;//本币
                double FYHJJERMB = YGZJE / rate; //折合人民币
                owner.setValue("FYHJBB",FYHJBB,11L);
                owner.setValue("FYHJJERMB",FYHJJERMB,11L);
            }

        }

    }

}
