1.采购建议报表下推采购申请单

This commit is contained in:
龚豆豆 2025-09-16 16:05:06 +08:00
parent 6bcecdcd09
commit 366920037e
2 changed files with 348 additions and 202 deletions

View File

@ -1,5 +1,7 @@
package tqq9.lc123.cloud.app.plugin.form.pm; package tqq9.lc123.cloud.app.plugin.form.pm;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.google.gson.Gson; import com.google.gson.Gson;
import kd.bos.bill.AbstractBillPlugIn; import kd.bos.bill.AbstractBillPlugIn;
import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObject;
@ -8,10 +10,12 @@ import kd.bos.dataentity.utils.StringUtils;
import kd.bos.entity.datamodel.IDataModel; import kd.bos.entity.datamodel.IDataModel;
import kd.bos.entity.datamodel.events.ChangeData; import kd.bos.entity.datamodel.events.ChangeData;
import kd.bos.entity.datamodel.events.PropertyChangedArgs; import kd.bos.entity.datamodel.events.PropertyChangedArgs;
import kd.bos.form.FormShowParameter;
import kd.bos.form.IFormView; import kd.bos.form.IFormView;
import kd.bos.orm.query.QCP; import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter; import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.bos.servicehelper.user.UserServiceHelper;
import kd.sdk.plugin.Plugin; import kd.sdk.plugin.Plugin;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import tqq9.lc123.cloud.app.api.utils.Constants; import tqq9.lc123.cloud.app.api.utils.Constants;
@ -22,20 +26,28 @@ import tqq9.lc123.cloud.app.plugin.utils.HttpRequestUtils;
import java.io.IOException; import java.io.IOException;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.net.ConnectException; import java.net.ConnectException;
import java.util.ArrayList; import java.util.*;
import java.util.HashMap;
import java.util.Map;
/** /**
* 单据界面插件 * 单据界面插件
*/ */
public class PurApplyBillPlugin extends AbstractBillPlugIn implements Plugin { public class PurApplyBillPlugin extends AbstractBillPlugIn implements Plugin {
private static String URL; private static String URL;
private static DynamicObject BILLTYPE;
private static DynamicObject BIZTYPE;
private static DynamicObject LINETYPE;
static { static {
DynamicObject url = BusinessDataServiceHelper.loadSingle("tqq9_thirdconfig", "name", DynamicObject url = BusinessDataServiceHelper.loadSingle("tqq9_thirdconfig", "name",
new QFilter[]{new QFilter("number", QCP.equals, "FLXT_Balance_Url")}); new QFilter[]{new QFilter("number", QCP.equals, "FLXT_Balance_Url")});
URL = url != null ? url.getString("name") : null; URL = url != null ? url.getString("name") : null;
// 申请单
DynamicObject billtype = BusinessDataServiceHelper.loadSingle("bos_billtype", new QFilter[]{new QFilter("number", QCP.equals, "pm_PurApplyBill_STD_BT_S")});
BILLTYPE = billtype;
DynamicObject biztype = BusinessDataServiceHelper.loadSingle("bd_biztype", new QFilter[]{new QFilter("number", QCP.equals, "110")});
BIZTYPE = biztype;
DynamicObject linetype = BusinessDataServiceHelper.loadSingle("bd_linetype", new QFilter[]{new QFilter("number", QCP.equals, "010")});
LINETYPE = linetype;
} }
private final static String ENTRYENTITY = "billentry"; private final static String ENTRYENTITY = "billentry";
@ -372,5 +384,110 @@ public class PurApplyBillPlugin extends AbstractBillPlugIn implements Plugin {
} }
} }
@Override
public void afterCreateNewData(EventObject e) {
super.afterCreateNewData(e);
FormShowParameter formShowParameter = this.getView().getFormShowParameter();
JSONObject tqq9_pursuggestrpt = (JSONObject) formShowParameter.getCustomParam("pm_purapplybill");
if (tqq9_pursuggestrpt != null) {
IDataModel model = this.getModel();
DynamicObjectCollection billentry = model.getDataEntity(true).getDynamicObjectCollection("billentry");
billentry.clear();
//采购建议报表
JSONArray tqq9_pursuggestrptentry = tqq9_pursuggestrpt.getJSONArray("tqq9_pursuggestrptentry");
long currentUserId = UserServiceHelper.getCurrentUserId();
DynamicObject user = BusinessDataServiceHelper.loadSingle("bos_user", new QFilter[]{new QFilter("id", QCP.equals, currentUserId)});
DynamicObjectCollection entryentity = user.getDynamicObjectCollection("entryentity");
DynamicObject dept = null;//部门
for (DynamicObject dynamicObject : entryentity) {
boolean ispartjob = dynamicObject.getBoolean("ispartjob");
if (!ispartjob) {
dept = dynamicObject.getDynamicObject("dpt");
}
}
DynamicObject LCJT = BusinessDataServiceHelper.loadSingle("bos_org", new QFilter[]{new QFilter("name", QCP.equals, "励齿集团")});
DynamicObject currency = BusinessDataServiceHelper.loadSingle("bd_currency",
new QFilter[]{new QFilter("number", QCP.equals, "CNY")});//币别
DynamicObject taxrate = BusinessDataServiceHelper.loadSingle("bd_taxrate",
new QFilter[]{new QFilter("number", QCP.equals, "V13")});//税率
Date date = new Date();
int i = 0;
for (Object dynamicObject : tqq9_pursuggestrptentry) {
JSONObject entry = (JSONObject) dynamicObject;
if (entry.getBoolean("tqq9_ischange")) {
billentry.addNew();
if (i == 0) {
model.setValue("org", LCJT);//申请组织
model.setValue("dept", dept);//申请部门
model.setValue("bizuser", user);//申请人
model.setValue("currency", currency);//币别
model.setValue("creator", user);//创建人
model.setValue("lastupdateuser", user);//修改人
model.setValue("lastupdatetime", date);//修改时间
model.setValue("billtype", BILLTYPE);//单据类型
model.setValue("biztype", BIZTYPE);//业务类型
model.setValue("biztime", date);//申请日期
model.setValue("billstatus", "A");//单据状态
model.setValue("closestatus", "A");//关闭状态
model.setValue("cancelstatus", "A");//作废状态
model.setValue("changestatus", "A");//变更状态
model.setValue("subversion", "1");//子版本号
model.setValue("version", "1");//版本号
model.setValue("tqq9_sfsyhf_sh", "false");//是否使用货返
model.setValue("tqq9_hshfsysl_sh", taxrate);//含税货返使用税率
model.setValue("tqq9_sfsyxf_sh", "false");//是否使用现返
model.setValue("tqq9_hsxfsysl_sh", taxrate);//含税现返使用税率
model.setValue("tqq9_sfsyhf_bj", "false");//是否使用货返
model.setValue("tqq9_hshfsysl_bj", taxrate);//含税货返使用税率
model.setValue("tqq9_sfsyxf_bj", "false");//是否使用现返
model.setValue("tqq9_hsxfsysl_bj", taxrate);//含税现返使用税率
model.setValue("tqq9_sfsyhf_gz", "false");//是否使用货返
model.setValue("tqq9_hshfsysl_gz", taxrate);//含税货返使用税率
model.setValue("tqq9_sfsyxf_gz", "false");//是否使用现返
model.setValue("tqq9_hsxfsysl_gz", taxrate);//含税现返使用税率
}
JSONObject org = entry.getJSONObject("tqq9_org");
DynamicObject tqq9_org = BusinessDataServiceHelper.loadSingle(org.getLong("id"), "bos_org");//组织
JSONObject material = entry.getJSONObject("tqq9_material");//物料
DynamicObject tqq9_material = BusinessDataServiceHelper.loadSingle(material.getLong("id"), "bd_material");//物料
DynamicObject materialpurchaseinfo = BusinessDataServiceHelper.loadSingle("bd_materialpurchaseinfo", new QFilter[]{new QFilter("masterid", QCP.equals, tqq9_material.getLong("id"))});//物料采购信息
BigDecimal tqq9_saledates = entry.getBigDecimal("tqq9_saledates");
model.setValue("material", materialpurchaseinfo, i);//物料
model.setValue("materialname", tqq9_material.getString("name"), i);//物料名称
model.setValue("unit", tqq9_material.getDynamicObject("baseunit"), i);//计量单位
model.setValue("baseunit", tqq9_material.getDynamicObject("baseunit"), i);//基本单位
model.setValue("rowclosestatus", "A");//行关闭状态
model.setValue("rowterminatestatus", "A");//行终止状态
model.setValue("entryrecorg", tqq9_org, i);//收货组织
model.setValue("entryreqorg", tqq9_org, i);//需求组织
model.setValue("entryreqdept", dept, i);//需求部门
model.setValue("reqdate", date, i);//需求日期
model.setValue("purdate", date, i);//建议采购日期
model.setValue("deliverdate", date, i);//交货日期
model.setValue("bomtime", date, i);//展BOM时间
model.setValue("linetype", LINETYPE, i);//行类型
model.setValue("linetype", LINETYPE, i);//行类型
model.setValue("entrychangetype", "B",i);//变更方式
model.setValue("entrycreator", user, i);//创建人
model.setValue("entryrecdept", tqq9_org, i);//收货部门
model.setValue("entrypurdept", tqq9_org, i);//采购部门
model.setValue("entryoperatorgroup", tqq9_org, i);//采购组
model.setValue("tqq9_expectsaletime", tqq9_saledates, i);//预计销售时间()
if (StringUtils.equals(tqq9_org.getString("number"), "SHLC")) {
model.setValue("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_sh"), i);//最高采购限价
model.setValue("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_sh"), i);//含税单价
} else if (StringUtils.equals(tqq9_org.getString("number"), "BJLC")) {
model.setValue("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_bj"), i);//最高采购限价
model.setValue("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_bj"), i);//含税单价
} else if (StringUtils.equals(tqq9_org.getString("number"), "GZLC")) {
model.setValue("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_gz"), i);//最高采购限价
model.setValue("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_gz"), i);//含税单价
}
i++;
}
}
}
}
} }

View File

@ -10,6 +10,7 @@ import kd.bos.dataentity.utils.StringUtils;
import kd.bos.db.DB; import kd.bos.db.DB;
import kd.bos.db.DBRoute; import kd.bos.db.DBRoute;
import kd.bos.entity.datamodel.IDataModel; import kd.bos.entity.datamodel.IDataModel;
import kd.bos.form.CloseCallBack;
import kd.bos.form.ShowType; import kd.bos.form.ShowType;
import kd.bos.form.control.events.ItemClickEvent; import kd.bos.form.control.events.ItemClickEvent;
import kd.bos.form.plugin.AbstractFormPlugin; import kd.bos.form.plugin.AbstractFormPlugin;
@ -355,209 +356,237 @@ public class PurSuggestRptFromPlugin extends AbstractFormPlugin implements Plugi
this.getView().updateView(); this.getView().updateView();
} else if (StringUtils.equals("tqq9_purapply", itemKey)) { } else if (StringUtils.equals("tqq9_purapply", itemKey)) {
DynamicObjectCollection tqq9_pursuggestrptentry = dataEntity.getDynamicObjectCollection("tqq9_pursuggestrptentry"); DynamicObjectCollection tqq9_pursuggestrptentry = dataEntity.getDynamicObjectCollection("tqq9_pursuggestrptentry");
DynamicObject purapplybill = BusinessDataServiceHelper.newDynamicObject("pm_purapplybill"); DynamicObject dynamicObject = tqq9_pursuggestrptentry.get(0);
DynamicObjectCollection dynamicObjectCollection = purapplybill.getDynamicObjectCollection("billentry"); DynamicObject tqq9_org = dynamicObject.getDynamicObject("tqq9_org");
if(tqq9_org==null){
this.getView().showMessage("请先进行查询操作");
return;
}
long currentUserId = UserServiceHelper.getCurrentUserId(); BillShowParameter param = new BillShowParameter();
DynamicObject user = BusinessDataServiceHelper.loadSingle("bos_user", new QFilter[]{new QFilter("id", QCP.equals, currentUserId)}); param.setFormId("pm_purapplybill");
DynamicObjectCollection entryentity = user.getDynamicObjectCollection("entryentity"); param.setCustomParam("pm_purapplybill", dataEntity);//采购建议报表单号
DynamicObject dept = null; param.setCloseCallBack(new CloseCallBack(this, "pm_purapplybill"));
for (DynamicObject dynamicObject : entryentity) { param.getOpenStyle().setShowType(ShowType.Modal);
boolean ispartjob = dynamicObject.getBoolean("ispartjob"); this.getView().showForm(param);
if (!ispartjob) { //-------------------------
dept = dynamicObject.getDynamicObject("dpt"); // DynamicObject purapplybill = BusinessDataServiceHelper.newDynamicObject("pm_purapplybill");
} // DynamicObjectCollection dynamicObjectCollection = purapplybill.getDynamicObjectCollection("billentry");
} //
DynamicObject org = BusinessDataServiceHelper.loadSingle("bos_org", new QFilter[]{new QFilter("name", QCP.equals, "励齿集团")}); // long currentUserId = UserServiceHelper.getCurrentUserId();
CodeRuleInfo vouCodeRule = CodeRuleServiceHelper.getCodeRule("pm_purapplybill", // DynamicObject user = BusinessDataServiceHelper.loadSingle("bos_user", new QFilter[]{new QFilter("id", QCP.equals, currentUserId)});
purapplybill, org.getString("id")); // DynamicObjectCollection entryentity = user.getDynamicObjectCollection("entryentity");
String billno = CodeRuleServiceHelper.getNumber(vouCodeRule, purapplybill);//采购申请单编号 // DynamicObject dept = null;
DynamicObject currency = BusinessDataServiceHelper.loadSingle("bd_currency", // for (DynamicObject dynamicObject : entryentity) {
new QFilter[]{new QFilter("number", QCP.equals, "CNY")});//币别 // boolean ispartjob = dynamicObject.getBoolean("ispartjob");
DynamicObject taxrate = BusinessDataServiceHelper.loadSingle("bd_taxrate", // if (!ispartjob) {
new QFilter[]{new QFilter("number", QCP.equals, "V13")});//税率 // dept = dynamicObject.getDynamicObject("dpt");
Date date = new Date(); // }
int i = 0; // }
for (DynamicObject dynamicObject : tqq9_pursuggestrptentry) { // DynamicObject org = BusinessDataServiceHelper.loadSingle("bos_org", new QFilter[]{new QFilter("name", QCP.equals, "励齿集团")});
if (dynamicObject.getBoolean("tqq9_ischange")) { // CodeRuleInfo vouCodeRule = CodeRuleServiceHelper.getCodeRule("pm_purapplybill",
if (i == 0) { // purapplybill, org.getString("id"));
purapplybill.set("org", org);//申请组织 // String billno = CodeRuleServiceHelper.getNumber(vouCodeRule, purapplybill);//采购申请单编号
purapplybill.set("dept", dept);//申请部门 // DynamicObject currency = BusinessDataServiceHelper.loadSingle("bd_currency",
purapplybill.set("bizuser", user);//申请人 // new QFilter[]{new QFilter("number", QCP.equals, "CNY")});//币别
purapplybill.set("currency", currency);//币别 // DynamicObject taxrate = BusinessDataServiceHelper.loadSingle("bd_taxrate",
purapplybill.set("creator", user);//创建人 // new QFilter[]{new QFilter("number", QCP.equals, "V13")});//税率
purapplybill.set("lastupdateuser", user);//修改人 // Date date = new Date();
purapplybill.set("lastupdatetime", date);//修改时间 // int i = 0;
purapplybill.set("billno", billno);//采购申请单编号 // for (DynamicObject dynamicObject : tqq9_pursuggestrptentry) {
purapplybill.set("billtype", BILLTYPE);//单据类型 // if (dynamicObject.getBoolean("tqq9_ischange")) {
purapplybill.set("biztype", BIZTYPE);//业务类型 // if (i == 0) {
purapplybill.set("biztime", date);//申请日期 // purapplybill.set("org", org);//申请组织
purapplybill.set("billstatus", "A");//单据状态 // purapplybill.set("dept", dept);//申请部门
purapplybill.set("closestatus", "A");//关闭状态 // purapplybill.set("bizuser", user);//申请人
purapplybill.set("cancelstatus", "A");//作废状态 // purapplybill.set("currency", currency);//币别
purapplybill.set("changestatus", "A");//变更状态 // purapplybill.set("creator", user);//创建人
purapplybill.set("subversion", "1");//子版本号 // purapplybill.set("lastupdateuser", user);//修改人
purapplybill.set("version", "1");//版本号 // purapplybill.set("lastupdatetime", date);//修改时间
purapplybill.set("tqq9_sfsyhf_sh", "false");//是否使用货返 // purapplybill.set("billno", billno);//采购申请单编号
purapplybill.set("tqq9_hshfsysl_sh", taxrate);//含税货返使用税率 // purapplybill.set("billtype", BILLTYPE);//单据类型
purapplybill.set("tqq9_sfsyxf_sh", "false");//是否使用现返 // purapplybill.set("biztype", BIZTYPE);//业务类型
purapplybill.set("tqq9_hsxfsysl_sh", taxrate);//含税现返使用税率 // purapplybill.set("biztime", date);//申请日期
purapplybill.set("tqq9_sfsyhf_bj", "false");//是否使用货返 // purapplybill.set("billstatus", "A");//单据状态
purapplybill.set("tqq9_hshfsysl_bj", taxrate);//含税货返使用税率 // purapplybill.set("closestatus", "A");//关闭状态
purapplybill.set("tqq9_sfsyxf_bj", "false");//是否使用现返 // purapplybill.set("cancelstatus", "A");//作废状态
purapplybill.set("tqq9_hsxfsysl_bj", taxrate);//含税现返使用税率 // purapplybill.set("changestatus", "A");//变更状态
purapplybill.set("tqq9_sfsyhf_gz", "false");//是否使用货返 // purapplybill.set("subversion", "1");//子版本号
purapplybill.set("tqq9_hshfsysl_gz", taxrate);//含税货返使用税率 // purapplybill.set("version", "1");//版本号
purapplybill.set("tqq9_sfsyxf_gz", "false");//是否使用现返 // purapplybill.set("tqq9_sfsyhf_sh", "false");//是否使用货返
purapplybill.set("tqq9_hsxfsysl_gz", taxrate);//含税现返使用税率 // purapplybill.set("tqq9_hshfsysl_sh", taxrate);//含税货返使用税率
} // purapplybill.set("tqq9_sfsyxf_sh", "false");//是否使用现返
DynamicObject tqq9_org = dynamicObject.getDynamicObject("tqq9_org");//组织 // purapplybill.set("tqq9_hsxfsysl_sh", taxrate);//含税现返使用税率
DynamicObject tqq9_material = dynamicObject.getDynamicObject("tqq9_material");//物料 // purapplybill.set("tqq9_sfsyhf_bj", "false");//是否使用货返
DynamicObject materialpurchaseinfo = BusinessDataServiceHelper.loadSingle("bd_materialpurchaseinfo", // purapplybill.set("tqq9_hshfsysl_bj", taxrate);//含税货返使用税率
new QFilter[]{new QFilter("masterid", QCP.equals, tqq9_material.getLong("id"))});//物料采购信息 // purapplybill.set("tqq9_sfsyxf_bj", "false");//是否使用现返
BigDecimal tqq9_saledates = dynamicObject.getBigDecimal("tqq9_saledates"); // purapplybill.set("tqq9_hsxfsysl_bj", taxrate);//含税现返使用税率
DynamicObject dynamicObject1 = dynamicObjectCollection.addNew(); // purapplybill.set("tqq9_sfsyhf_gz", "false");//是否使用货返
dynamicObject1.set("seq", i + 1);//分录号 // purapplybill.set("tqq9_hshfsysl_gz", taxrate);//含税货返使用税率
dynamicObject1.set("material", materialpurchaseinfo);//物料 // purapplybill.set("tqq9_sfsyxf_gz", "false");//是否使用现返
dynamicObject1.set("materialname", tqq9_material.getString("name"));//物料名称 // purapplybill.set("tqq9_hsxfsysl_gz", taxrate);//含税现返使用税率
dynamicObject1.set("unit", tqq9_material.getDynamicObject("baseunit"));//计量单位 // }
dynamicObject1.set("baseunit", tqq9_material.getDynamicObject("baseunit"));//基本单位 // DynamicObject tqq9_org = dynamicObject.getDynamicObject("tqq9_org");//组织
dynamicObject1.set("rowclosestatus", "A");//行关闭状态 // DynamicObject tqq9_material = dynamicObject.getDynamicObject("tqq9_material");//物料
dynamicObject1.set("rowterminatestatus", "A");//行终止状态 // DynamicObject materialpurchaseinfo = BusinessDataServiceHelper.loadSingle("bd_materialpurchaseinfo",
dynamicObject1.set("entryrecorg", tqq9_org);//收货组织 // new QFilter[]{new QFilter("masterid", QCP.equals, tqq9_material.getLong("id"))});//物料采购信息
dynamicObject1.set("entryreqorg", tqq9_org);//需求组织 // BigDecimal tqq9_saledates = dynamicObject.getBigDecimal("tqq9_saledates");
dynamicObject1.set("entryreqdept", dept);//需求部门 // DynamicObject dynamicObject1 = dynamicObjectCollection.addNew();
dynamicObject1.set("reqdate", date);//需求日期 // dynamicObject1.set("seq", i + 1);//分录号
dynamicObject1.set("purdate", date);//建议采购日期 // dynamicObject1.set("material", materialpurchaseinfo);//物料
dynamicObject1.set("deliverdate", date);//交货日期 // dynamicObject1.set("materialname", tqq9_material.getString("name"));//物料名称
dynamicObject1.set("bomtime", date);//展BOM时间 // dynamicObject1.set("unit", tqq9_material.getDynamicObject("baseunit"));//计量单位
dynamicObject1.set("entrychangetype", "B");//变更方式 // dynamicObject1.set("baseunit", tqq9_material.getDynamicObject("baseunit"));//基本单位
dynamicObject1.set("linetype", LINETYPE);//行类型 // dynamicObject1.set("rowclosestatus", "A");//行关闭状态
dynamicObject1.set("linetype", LINETYPE);//行类型 // dynamicObject1.set("rowterminatestatus", "A");//行终止状态
dynamicObject1.set("entrycreator", user);//创建人 // dynamicObject1.set("entryrecorg", tqq9_org);//收货组织
dynamicObject1.set("entryrecdept", tqq9_org);//收货部门 // dynamicObject1.set("entryreqorg", tqq9_org);//需求组织
dynamicObject1.set("entrypurdept", tqq9_org);//采购部门 // dynamicObject1.set("entryreqdept", dept);//需求部门
dynamicObject1.set("entryoperatorgroup", tqq9_org);//采购组 // dynamicObject1.set("reqdate", date);//需求日期
dynamicObject1.set("tqq9_expectsaletime", tqq9_saledates);//预计销售时间() // dynamicObject1.set("purdate", date);//建议采购日期
if (StringUtils.equals(tqq9_org.getString("number"), "SHLC")) { // dynamicObject1.set("deliverdate", date);//交货日期
dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_sh"));//最高采购限价 // dynamicObject1.set("bomtime", date);//展BOM时间
dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_sh"));//含税单价 // dynamicObject1.set("entrychangetype", "B");//变更方式
} else if (StringUtils.equals(tqq9_org.getString("number"), "BJLC")) { // dynamicObject1.set("linetype", LINETYPE);//行类型
dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_bj"));//最高采购限价 // dynamicObject1.set("linetype", LINETYPE);//行类型
dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_bj"));//含税单价 // dynamicObject1.set("entrycreator", user);//创建人
} else if (StringUtils.equals(tqq9_org.getString("number"), "GZLC")) { // dynamicObject1.set("entryrecdept", tqq9_org);//收货部门
dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_gz"));//最高采购限价 // dynamicObject1.set("entrypurdept", tqq9_org);//采购部门
dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_gz"));//含税单价 // dynamicObject1.set("entryoperatorgroup", tqq9_org);//采购组
} // dynamicObject1.set("tqq9_expectsaletime", tqq9_saledates);//预计销售时间()
dynamicObjectCollection.set(i, dynamicObject1); // if (StringUtils.equals(tqq9_org.getString("number"), "SHLC")) {
i++; // dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_sh"));//最高采购限价
} // dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_sh"));//含税单价
} // } else if (StringUtils.equals(tqq9_org.getString("number"), "BJLC")) {
purapplybill.set("billentry", dynamicObjectCollection); // dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_bj"));//最高采购限价
SaveServiceHelper.save(new DynamicObject[]{purapplybill}); // dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_bj"));//含税单价
BillShowParameter billShowParameter = new BillShowParameter(); // } else if (StringUtils.equals(tqq9_org.getString("number"), "GZLC")) {
billShowParameter.getOpenStyle().setShowType(ShowType.Modal); // dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_gz"));//最高采购限价
billShowParameter.setFormId("pm_purapplybill"); // dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_gz"));//含税单价
DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(purapplybill.getLong("id"), "pm_purapplybill"); // }
billShowParameter.setPkId(dynamicObject.get("id")); // dynamicObjectCollection.set(i, dynamicObject1);
this.getView().showForm(billShowParameter); // i++;
// }
// }
// purapplybill.set("billentry", dynamicObjectCollection);
// SaveServiceHelper.save(new DynamicObject[]{purapplybill});
// BillShowParameter billShowParameter = new BillShowParameter();
// billShowParameter.getOpenStyle().setShowType(ShowType.Modal);
// billShowParameter.setFormId("pm_purapplybill");
// DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(purapplybill.getLong("id"), "pm_purapplybill");
// billShowParameter.setPkId(dynamicObject.get("id"));
// this.getView().showForm(billShowParameter);
} else if (StringUtils.equals("tqq9_pushcgdd", itemKey)) { } else if (StringUtils.equals("tqq9_pushcgdd", itemKey)) {
DynamicObjectCollection tqq9_pursuggestrptentry = dataEntity.getDynamicObjectCollection("tqq9_pursuggestrptentry"); DynamicObjectCollection tqq9_pursuggestrptentry = dataEntity.getDynamicObjectCollection("tqq9_pursuggestrptentry");
DynamicObject pm_purorderbill = BusinessDataServiceHelper.newDynamicObject("pm_purorderbill"); DynamicObject dynamicObject = tqq9_pursuggestrptentry.get(0);
DynamicObjectCollection dynamicObjectCollection = pm_purorderbill.getDynamicObjectCollection("billentry"); DynamicObject tqq9_org = dynamicObject.getDynamicObject("tqq9_org");
if(tqq9_org==null){
this.getView().showMessage("请先进行查询操作");
return;
}
BillShowParameter param = new BillShowParameter();
param.setFormId("pm_purorderbill");
param.setCustomParam("pm_purorderbill", dataEntity);//采购订单号
param.setCloseCallBack(new CloseCallBack(this, "pm_purorderbill"));
param.getOpenStyle().setShowType(ShowType.Modal);
this.getView().showForm(param);
long currentUserId = UserServiceHelper.getCurrentUserId(); //----------------------------
DynamicObject user = BusinessDataServiceHelper.loadSingle("bos_user", new QFilter[]{new QFilter("id", QCP.equals, currentUserId)}); // DynamicObject pm_purorderbill = BusinessDataServiceHelper.newDynamicObject("pm_purorderbill");
DynamicObjectCollection entryentity = user.getDynamicObjectCollection("entryentity"); // DynamicObjectCollection dynamicObjectCollection = pm_purorderbill.getDynamicObjectCollection("billentry");
DynamicObject dept = null; //
for (DynamicObject dynamicObject : entryentity) { // long currentUserId = UserServiceHelper.getCurrentUserId();
boolean ispartjob = dynamicObject.getBoolean("ispartjob"); // DynamicObject user = BusinessDataServiceHelper.loadSingle("bos_user", new QFilter[]{new QFilter("id", QCP.equals, currentUserId)});
if (!ispartjob) { // DynamicObjectCollection entryentity = user.getDynamicObjectCollection("entryentity");
dept = dynamicObject.getDynamicObject("dpt"); // DynamicObject dept = null;
} // for (DynamicObject dynamicObject : entryentity) {
} // boolean ispartjob = dynamicObject.getBoolean("ispartjob");
DynamicObject dynamicObject2 = tqq9_pursuggestrptentry.get(0); // if (!ispartjob) {
DynamicObject org = dynamicObject2.getDynamicObject("tqq9_org");//组织 // dept = dynamicObject.getDynamicObject("dpt");
CodeRuleInfo vouCodeRule = CodeRuleServiceHelper.getCodeRule("pm_purorderbill", // }
pm_purorderbill, org.getString("id")); // }
String billno = String.valueOf(new Date().getTime());//采购申请单编号 // DynamicObject dynamicObject2 = tqq9_pursuggestrptentry.get(0);
// String billno = CodeRuleServiceHelper.getNumber(vouCodeRule, pm_purorderbill);//采购申请单编号 // DynamicObject org = dynamicObject2.getDynamicObject("tqq9_org");//组织
DynamicObject currency = BusinessDataServiceHelper.loadSingle("bd_currency", // CodeRuleInfo vouCodeRule = CodeRuleServiceHelper.getCodeRule("pm_purorderbill",
new QFilter[]{new QFilter("number", QCP.equals, "CNY")});//币别 // pm_purorderbill, org.getString("id"));
DynamicObject taxrate = BusinessDataServiceHelper.loadSingle("bd_taxrate", // String billno = String.valueOf(new Date().getTime());//采购申请单编号
new QFilter[]{new QFilter("number", QCP.equals, "V13")});//税率 //// String billno = CodeRuleServiceHelper.getNumber(vouCodeRule, pm_purorderbill);//采购申请单编号
Date date = new Date(); // DynamicObject currency = BusinessDataServiceHelper.loadSingle("bd_currency",
int i = 0; // new QFilter[]{new QFilter("number", QCP.equals, "CNY")});//币别
for (DynamicObject dynamicObject : tqq9_pursuggestrptentry) { // DynamicObject taxrate = BusinessDataServiceHelper.loadSingle("bd_taxrate",
org = dynamicObject2.getDynamicObject("tqq9_org");//组织 // new QFilter[]{new QFilter("number", QCP.equals, "V13")});//税率
if (dynamicObject.getBoolean("tqq9_ischange")) { // Date date = new Date();
if (i == 0) { // int i = 0;
pm_purorderbill.set("org", org);//申请组织 // for (DynamicObject dynamicObject : tqq9_pursuggestrptentry) {
pm_purorderbill.set("dept", dept);//申请部门 // org = dynamicObject2.getDynamicObject("tqq9_org");//组织
pm_purorderbill.set("currency", currency);//币别 // if (dynamicObject.getBoolean("tqq9_ischange")) {
pm_purorderbill.set("creator", user);//创建人 // if (i == 0) {
pm_purorderbill.set("lastupdateuser", user);//修改人 // pm_purorderbill.set("org", org);//申请组织
pm_purorderbill.set("lastupdatetime", date);//修改时间 // pm_purorderbill.set("dept", dept);//申请部门
pm_purorderbill.set("billno", billno);//采购订单编号 // pm_purorderbill.set("currency", currency);//币别
pm_purorderbill.set("billtype", BILLTYPE1);//单据类型 // pm_purorderbill.set("creator", user);//创建人
pm_purorderbill.set("biztype", BIZTYPE);//业务类型 // pm_purorderbill.set("lastupdateuser", user);//修改人
pm_purorderbill.set("biztime", date);//申请日期 // pm_purorderbill.set("lastupdatetime", date);//修改时间
pm_purorderbill.set("billstatus", "A");//单据状态 // pm_purorderbill.set("billno", billno);//采购订单编号
pm_purorderbill.set("closestatus", "A");//关闭状态 // pm_purorderbill.set("billtype", BILLTYPE1);//单据类型
pm_purorderbill.set("cancelstatus", "A");//作废状态 // pm_purorderbill.set("biztype", BIZTYPE);//业务类型
pm_purorderbill.set("changestatus", "A");//变更状态 // pm_purorderbill.set("biztime", date);//申请日期
pm_purorderbill.set("subversion", "1");//子版本号 // pm_purorderbill.set("billstatus", "A");//单据状态
pm_purorderbill.set("version", "1");//版本号 // pm_purorderbill.set("closestatus", "A");//关闭状态
pm_purorderbill.set("tqq9_sfsyhf", "false");//是否使用货返 // pm_purorderbill.set("cancelstatus", "A");//作废状态
pm_purorderbill.set("tqq9_hshfsysl", taxrate);//含税货返使用税率 // pm_purorderbill.set("changestatus", "A");//变更状态
pm_purorderbill.set("tqq9_sfsyxf", "false");//是否使用现返 // pm_purorderbill.set("subversion", "1");//子版本号
pm_purorderbill.set("tqq9_hsxfsysl", taxrate);//含税现返使用税率 // pm_purorderbill.set("version", "1");//版本号
} // pm_purorderbill.set("tqq9_sfsyhf", "false");//是否使用货返
DynamicObject tqq9_material = dynamicObject.getDynamicObject("tqq9_material");//物料 // pm_purorderbill.set("tqq9_hshfsysl", taxrate);//含税货返使用税率
DynamicObject materialpurchaseinfo = BusinessDataServiceHelper.loadSingle("bd_materialpurchaseinfo", // pm_purorderbill.set("tqq9_sfsyxf", "false");//是否使用现返
new QFilter[]{new QFilter("masterid", QCP.equals, tqq9_material.getLong("id"))});//物料采购信息 // pm_purorderbill.set("tqq9_hsxfsysl", taxrate);//含税现返使用税率
BigDecimal tqq9_saledates = dynamicObject.getBigDecimal("tqq9_saledates"); // }
DynamicObject dynamicObject1 = dynamicObjectCollection.addNew(); // DynamicObject tqq9_material = dynamicObject.getDynamicObject("tqq9_material");//物料
dynamicObject1.set("seq", i + 1);//分录号 // DynamicObject materialpurchaseinfo = BusinessDataServiceHelper.loadSingle("bd_materialpurchaseinfo",
dynamicObject1.set("material", materialpurchaseinfo);//物料 // new QFilter[]{new QFilter("masterid", QCP.equals, tqq9_material.getLong("id"))});//物料采购信息
dynamicObject1.set("materialname", tqq9_material.getString("name"));//物料名称 // BigDecimal tqq9_saledates = dynamicObject.getBigDecimal("tqq9_saledates");
dynamicObject1.set("unit", tqq9_material.getDynamicObject("baseunit"));//计量单位 // DynamicObject dynamicObject1 = dynamicObjectCollection.addNew();
dynamicObject1.set("baseunit", tqq9_material.getDynamicObject("baseunit"));//基本单位 // dynamicObject1.set("seq", i + 1);//分录号
dynamicObject1.set("tqq9_brand", tqq9_material.getDynamicObject("tqq9_brand"));//品牌 // dynamicObject1.set("material", materialpurchaseinfo);//物料
dynamicObject1.set("rowclosestatus", "A");//行关闭状态 // dynamicObject1.set("materialname", tqq9_material.getString("name"));//物料名称
dynamicObject1.set("rowterminatestatus", "A");//行终止状态 // dynamicObject1.set("unit", tqq9_material.getDynamicObject("baseunit"));//计量单位
dynamicObject1.set("entryrecorg", org);//收货组织 // dynamicObject1.set("baseunit", tqq9_material.getDynamicObject("baseunit"));//基本单位
dynamicObject1.set("entryreqorg", org);//需求组织 // dynamicObject1.set("tqq9_brand", tqq9_material.getDynamicObject("tqq9_brand"));//品牌
dynamicObject1.set("entryreqdept", dept);//需求部门 // dynamicObject1.set("rowclosestatus", "A");//行关闭状态
dynamicObject1.set("deliverdate", date);//交货日期 // dynamicObject1.set("rowterminatestatus", "A");//行终止状态
dynamicObject1.set("entrychangetype", "B");//变更方式 // dynamicObject1.set("entryrecorg", org);//收货组织
dynamicObject1.set("linetype", LINETYPE);//行类型 // dynamicObject1.set("entryreqorg", org);//需求组织
dynamicObject1.set("entrycreator", user);//创建人 // dynamicObject1.set("entryreqdept", dept);//需求部门
dynamicObject1.set("entryrecdept", org);//收货部门 // dynamicObject1.set("deliverdate", date);//交货日期
dynamicObject1.set("discounttype", "C");//折扣方式 // dynamicObject1.set("entrychangetype", "B");//变更方式
dynamicObject1.set("tqq9_expectsaletime", tqq9_saledates);//预计销售时间() // dynamicObject1.set("linetype", LINETYPE);//行类型
if (StringUtils.equals(org.getString("number"), "SHLC")) { // dynamicObject1.set("entrycreator", user);//创建人
dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_sh"));//最高采购限价 // dynamicObject1.set("entryrecdept", org);//收货部门
dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_sh"));//含税单价 // dynamicObject1.set("discounttype", "C");//折扣方式
} else if (StringUtils.equals(org.getString("number"), "BJLC")) { // dynamicObject1.set("tqq9_expectsaletime", tqq9_saledates);//预计销售时间()
dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_bj"));//最高采购限价 // if (StringUtils.equals(org.getString("number"), "SHLC")) {
dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_bj"));//含税单价 // dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_sh"));//最高采购限价
} else if (StringUtils.equals(org.getString("number"), "GZLC")) { // dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_sh"));//含税单价
dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_gz"));//最高采购限价 // } else if (StringUtils.equals(org.getString("number"), "BJLC")) {
dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_gz"));//含税单价 // dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_bj"));//最高采购限价
} // dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_bj"));//含税单价
dynamicObjectCollection.set(i, dynamicObject1); // } else if (StringUtils.equals(org.getString("number"), "GZLC")) {
i++; // dynamicObject1.set("tqq9_zgcgxj", tqq9_material.getBigDecimal("tqq9_maxprice_gz"));//最高采购限价
} // dynamicObject1.set("priceandtax", tqq9_material.getBigDecimal("tqq9_maxprice_gz"));//含税单价
} // }
pm_purorderbill.set("billentry", dynamicObjectCollection); // dynamicObjectCollection.set(i, dynamicObject1);
SaveServiceHelper.save(new DynamicObject[]{pm_purorderbill}); // i++;
BillShowParameter billShowParameter = new BillShowParameter(); // }
billShowParameter.getOpenStyle().setShowType(ShowType.Modal); // }
billShowParameter.setFormId("pm_purorderbill"); // pm_purorderbill.set("billentry", dynamicObjectCollection);
DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(pm_purorderbill.getLong("id"), "pm_purorderbill"); // SaveServiceHelper.save(new DynamicObject[]{pm_purorderbill});
billShowParameter.setPkId(dynamicObject.get("id")); // BillShowParameter billShowParameter = new BillShowParameter();
this.getView().showForm(billShowParameter); // billShowParameter.getOpenStyle().setShowType(ShowType.Modal);
// billShowParameter.setFormId("pm_purorderbill");
// DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(pm_purorderbill.getLong("id"), "pm_purorderbill");
// billShowParameter.setPkId(dynamicObject.get("id"));
// this.getView().showForm(billShowParameter);
} }