Browse Source

问题修改

zhanglei
God 2 years ago
parent
commit
81f9e69308
  1. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerDto.java
  2. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehinstall/BaseVehinstallDto.java
  3. 75
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerService.java
  4. 69
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehinstall/BaseVehinstallRest.java
  5. 3
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/kingdeeUtils/KingDeeOrgAndDeptCode.java
  6. 28
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/kingdeeUtils/KingDeeUtils.java
  7. 6
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java
  8. 6
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stkinstock/STKInStockService.java

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerDto.java

@ -86,7 +86,8 @@ public class BaseTrailerDto implements Dto {
private String useOrgSid;
@ApiModelProperty("分公司名称")
private String useOrgName;
@ApiModelProperty("部门sid")
private String departmentSid;
@ApiModelProperty("发票照片")
private List<CommonAppendixDto> invoicePic;
@ApiModelProperty("合格证照片")

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehinstall/BaseVehinstallDto.java

@ -81,5 +81,6 @@ public class BaseVehinstallDto implements Dto {
private String useOrgSid; // 使用组织
@ApiModelProperty("创建组织")
private String createOrg; // 创建组织
@ApiModelProperty("部门sid")
private String departmentSid; // 部门sid
}

75
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerService.java

@ -26,18 +26,24 @@
package com.yxt.anrui.base.biz.basetrailer;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.baseinternalpurchasevehicle.BaseInternalPurchaseVehicle;
import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturer;
import com.yxt.anrui.base.api.basetrailer.*;
import com.yxt.anrui.base.api.basetrailermodel.BaseTrailerModel;
import com.yxt.anrui.base.api.basetrailermodel.BaseTrailerModelDetailsVo;
import com.yxt.anrui.base.api.basevehicle.BaseVehicle;
import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrand;
import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificate;
import com.yxt.anrui.base.api.commonappendix.CommonAppendix;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixDto;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo;
import com.yxt.anrui.base.biz.basemanufacturer.BaseManufacturerService;
import com.yxt.anrui.base.biz.basetrailermodel.BaseTrailerModelService;
import com.yxt.anrui.base.biz.basevehicle.BaseVehicleService;
import com.yxt.anrui.base.biz.basevehiclebrand.BaseVehicleBrandService;
import com.yxt.anrui.base.biz.basevehiclecertificate.BaseVehicleCertificateService;
import com.yxt.anrui.base.biz.basevehmodelannouncementmodel.BaseVehmodelAnnouncementmodelService;
import com.yxt.anrui.base.biz.commonappendix.CommonAppendixService;
@ -46,6 +52,12 @@ import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.stkinstock.StkInStock;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.scm.api.scmwarehouse.ScmWarehouseVo;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
@ -56,6 +68,7 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
@ -90,11 +103,19 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
private BusSalesOrderFeign busSalesOrderFeign;
@Autowired
private BusSalesOrderVehicleFeign busSalesOrderVehicleFeign;
@Autowired
private FinKingDeeFeign finKingDeeFeign;
@Resource
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private BaseManufacturerService baseManufacturerService;
@Autowired
private BaseVehicleBrandService baseVehicleBrandService;
private QueryWrapper<BaseTrailer> createQueryWrapper(BaseTrailerQuery query) {
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<BaseTrailer> qw = new QueryWrapper<>();
qw.eq("bt.useOrgSid",query.getUseOrgSid());
qw.eq("bt.useOrgSid", query.getUseOrgSid());
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("bt.vinNo", query.getVinNo());
}
@ -165,7 +186,7 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
for (BusSalesOrderVehicle busSalesOrderVehicle : busSalesOrderVehicles) {
String salesOrderSid = busSalesOrderVehicle.getSalesOrderSid();
BusSalesOrderDetailsVo busSalesOrderDetailsVo = busSalesOrderFeign.fetchDetailsBySid(salesOrderSid).getData();
if (!busSalesOrderDetailsVo.getNodeState().equals("待提交") && !busSalesOrderDetailsVo.getNodeState().equals("已终止")){
if (!busSalesOrderDetailsVo.getNodeState().equals("待提交") && !busSalesOrderDetailsVo.getNodeState().equals("已终止")) {
baseTrailerDetailsVo.setSaleOrderNo(busSalesOrderDetailsVo.getBillNo());
baseTrailerDetailsVo.setSaleOrderDate(busSalesOrderDetailsVo.getCreateDate());
break;
@ -175,13 +196,13 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
List<CommonAppendixVo> invoicePic = new ArrayList<>();
List<CommonAppendixVo> certificatePic = new ArrayList<>();
for (CommonAppendixVo commonAppendixVo : commonAppendixVos) {
if (commonAppendixVo.getAttachType().equals("挂车发票照片")){
if (commonAppendixVo.getAttachType().equals("挂车发票照片")) {
String filePath = commonAppendixVo.getFilePath();
String urlPrefix = fileUploadComponent.getUrlPrefix();
filePath = urlPrefix + filePath;
commonAppendixVo.setFilePath(filePath);
invoicePic.add(commonAppendixVo);
}else if (commonAppendixVo.getAttachType().equals("挂车合格证照片")){
} else if (commonAppendixVo.getAttachType().equals("挂车合格证照片")) {
String filePath = commonAppendixVo.getFilePath();
String urlPrefix = fileUploadComponent.getUrlPrefix();
filePath = urlPrefix + filePath;
@ -242,6 +263,52 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
certificatePic.setAttachType("挂车合格证照片");
commonAppendixService.saveOrUpdateDto(certificatePic);
}
StkInStock stkInStock = new StkInStock();
//入库日期:FDate (必填项)
stkInStock.setFDate(DateUtil.now());
//采购部门:FPurchaseDeptId (必填项)
String departmentSid = dto.getDepartmentSid();
SysOrganizationVo data = sysOrganizationFeign.fetchBySid(departmentSid).getData();
stkInStock.setFPurchaseDeptId(data.getOrgCode());
//采购组织:FPurchaseOrgId (必填项)
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(dto.getUseOrgSid());
SysOrganizationVo vo = sysOrganizationVoResultBean.getData();
if (vo != null) {
stkInStock.setFPurchaseOrgId(vo.getOrgCode());
//分配目标组织:TOrgId (必填项)
stkInStock.setTOrgId(vo.getOrgCode());
}
//供应商:FSupplierId (必填项)
String trailerModelSid = baseTrailer.getTrailerModelSid();
BaseTrailerModel baseTrailerModel = baseTrailerModelService.fetchBySid(trailerModelSid);
BaseManufacturer baseManufacturer = baseManufacturerService.fetchBySid(baseTrailerModel.getManufacturerSid());
stkInStock.setFSupplierId(baseManufacturer.getManufacturerCode());
//物料列表:FInStockEntry (必填项)
List<StkInStock.FInStockEntry> fInStockEntry = new ArrayList<>();
StkInStock.FInStockEntry sf = new StkInStock.FInStockEntry();
//单价 目前放的是内销价 应该是厂家结算价 目前没有厂家结算价 需要后期修改为厂家结算价
sf.setFPrice(baseTrailer.getSettlementPrice().toString());
//车辆类型
sf.setCllx("61");
sf.setCllxType("sellChannel");
//批号:FLot
sf.setFLot(baseTrailer.getVinNo());
//物料编码:FMaterialId (必填项)
sf.setFMaterialId(baseTrailer.getVinNo().substring(baseTrailer.getVinNo().length() - 8) + "G");
//仓库:FStockId
sf.setFStockId("ARZSCK");
//物料分组
sf.setWlfz("99.02");
//存货类别
sf.setFCategoryIDKey("CHLB02_SYS");
sf.setFCategoryIDType("purchaseOrderType");
fInStockEntry.add(sf);
stkInStock.setFInStockEntry(fInStockEntry);
try {
finKingDeeFeign.draftStkInStock(stkInStock);
} catch (Exception e) {
e.printStackTrace();
}
return rb.success().setMsg("保存成功");
}

69
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehinstall/BaseVehinstallRest.java

@ -25,6 +25,18 @@
*********************************************************/
package com.yxt.anrui.base.biz.basevehinstall;
import cn.hutool.core.date.DateUtil;
import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturer;
import com.yxt.anrui.base.api.basetrailermodel.BaseTrailerModel;
import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModel;
import com.yxt.anrui.base.api.basevehinstallmodel.BaseVehinstallmodel;
import com.yxt.anrui.base.biz.basemanufacturer.BaseManufacturerService;
import com.yxt.anrui.base.biz.basevehiclemodel.BaseVehicleModelService;
import com.yxt.anrui.base.biz.basevehinstallmodel.BaseVehinstallmodelService;
import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign;
import com.yxt.anrui.fin.api.kingdee.stkinstock.StkInStock;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -34,6 +46,7 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import com.yxt.anrui.base.api.basevehinstall.BaseVehinstall;
import com.yxt.anrui.base.api.basevehinstall.BaseVehinstallQuery;
@ -42,6 +55,8 @@ import com.yxt.anrui.base.api.basevehinstall.BaseVehinstallDetailsVo;
import com.yxt.anrui.base.api.basevehinstall.BaseVehinstallDto;
import com.yxt.anrui.base.api.basevehinstall.BaseVehinstallFeign;
import javax.annotation.Resource;
/**
* Project: anrui-base(上装配置管理) <br/>
* File: BaseVehinstallFeignFallback.java <br/>
@ -62,6 +77,14 @@ public class BaseVehinstallRest implements BaseVehinstallFeign {
@Autowired
private BaseVehinstallService baseVehinstallService;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private BaseVehinstallmodelService baseVehinstallmodelService;
@Autowired
private BaseManufacturerService baseManufacturerService;
@Resource
private FinKingDeeFeign finKingDeeFeign;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@ -97,6 +120,52 @@ public class BaseVehinstallRest implements BaseVehinstallFeign {
return rb.setMsg("请填写销售指导价");
}
baseVehinstallService.saveOrUpdateDto(dto);
StkInStock stkInStock = new StkInStock();
//入库日期:FDate (必填项)
stkInStock.setFDate(DateUtil.now());
//采购部门:FPurchaseDeptId (必填项)
String departmentSid = dto.getDepartmentSid();
SysOrganizationVo data = sysOrganizationFeign.fetchBySid(departmentSid).getData();
stkInStock.setFPurchaseDeptId(data.getOrgCode());
//采购组织:FPurchaseOrgId (必填项)
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(dto.getUseOrgSid());
SysOrganizationVo vo = sysOrganizationVoResultBean.getData();
if (vo != null) {
stkInStock.setFPurchaseOrgId(vo.getOrgCode());
//分配目标组织:TOrgId (必填项)
stkInStock.setTOrgId(vo.getOrgCode());
}
//供应商:FSupplierId (必填项)
String mainSid = dto.getMainSid();
BaseVehinstallmodel baseVehinstallmodel = baseVehinstallmodelService.fetchBySid(mainSid);
BaseManufacturer baseManufacturer = baseManufacturerService.fetchBySid(baseVehinstallmodel.getRefitFactorySid());
stkInStock.setFSupplierId(baseManufacturer.getManufacturerCode());
//物料列表:FInStockEntry (必填项)
List<StkInStock.FInStockEntry> fInStockEntry = new ArrayList<>();
StkInStock.FInStockEntry sf = new StkInStock.FInStockEntry();
//单价 目前放的是内销价 应该是厂家结算价 目前没有厂家结算价 需要后期修改为厂家结算价
sf.setFPrice(dto.getCostPrice());
//车辆类型
sf.setCllx("61");
sf.setCllxType("sellChannel");
//批号:FLot
sf.setFLot(dto.getVinNo());
//物料编码:FMaterialId (必填项)
sf.setFMaterialId(dto.getVinNo().substring(dto.getVinNo().length() - 8) + "SZ");
//仓库:FStockId
sf.setFStockId("ARZSCK");
//物料分组
sf.setWlfz("99.02");
//存货类别
sf.setFCategoryIDKey("CHLB02_SYS");
sf.setFCategoryIDType("purchaseOrderType");
fInStockEntry.add(sf);
stkInStock.setFInStockEntry(fInStockEntry);
try {
finKingDeeFeign.draftStkInStock(stkInStock);
} catch (Exception e) {
e.printStackTrace();
}
return rb.success();
}

3
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/kingdeeUtils/KingDeeOrgAndDeptCode.java

@ -3,10 +3,13 @@ package com.yxt.anrui.fin.api.kingdee.kingdeeUtils;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
@Data
public class KingDeeOrgAndDeptCode {
@ApiModelProperty("分公司编码")
@NotBlank(message = "分公司编码不能为空")
private String orgCode; // 分公司编码
@ApiModelProperty("其他编码")
private String otherCode; // 其他编码

28
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/kingdeeUtils/KingDeeUtils.java

@ -12,20 +12,20 @@ public class KingDeeUtils {
String deptCode = kingDeeOrgAndDeptCode.getDeptCode();
if ("119".equals(orgCode)){
kingDeeOrgAndDeptCode.setOrgCode("112");
}
if ("01.119".equals(otherCode)){
kingDeeOrgAndDeptCode.setOtherCode("01.112");
}
if ("134".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("103");
}else if ("139".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("99");
}else if ("137".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("96");
}else if ("138".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("106");
}else if ("136".equals(deptCode) || "135".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("132");
if ("01.119".equals(otherCode)){
kingDeeOrgAndDeptCode.setOtherCode("01.112");
}
if ("134".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("103");
}else if ("139".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("99");
}else if ("137".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("96");
}else if ("138".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("106");
}else if ("136".equals(deptCode) || "135".equals(deptCode)){
kingDeeOrgAndDeptCode.setDeptCode("132");
}
}
return kingDeeOrgAndDeptCode;
}

6
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java

@ -253,12 +253,12 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
kingDeeOrgAndDeptCode.setOrgCode(salOutStock.getFSaleOrgId());
kingDeeOrgAndDeptCode.setDeptCode(salOutStock.getFSaleDeptID());
kingDeeOrgAndDeptCode.setOtherCode(salOutStock.getFCustomerID());
//kingDeeOrgAndDeptCode.setOtherCode(salOutStock.getFCustomerID());
kingDeeOrgAndDeptCode = KingDeeUtils.orgAndDeptCodeMerge(kingDeeOrgAndDeptCode);
salOutStock.setFSaleOrgId(kingDeeOrgAndDeptCode.getOrgCode());
salOutStock.setFSaleDeptID(kingDeeOrgAndDeptCode.getDeptCode());
salOutStock.setFCustomerID(kingDeeOrgAndDeptCode.getOtherCode());
salOutStock.setF_PAEZ_Base(kingDeeOrgAndDeptCode.getOrgCode());
//salOutStock.setFCustomerID(kingDeeOrgAndDeptCode.getOtherCode());
//salOutStock.setF_PAEZ_Base(kingDeeOrgAndDeptCode.getOrgCode());
return salOutStockService.draftSalOutStock(salOutStock);
}
@ApiOperation("批量暂存物料的接口")

6
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stkinstock/STKInStockService.java

@ -6,6 +6,8 @@ import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeCode;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.kingdeeUtils.KingDeeOrgAndDeptCode;
import com.yxt.anrui.fin.api.kingdee.kingdeeUtils.KingDeeUtils;
import com.yxt.anrui.fin.api.kingdee.stkInstockNumber.FinStkInstockNumber;
import com.yxt.anrui.fin.api.kingdee.stkinstock.StkInStock;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
@ -90,6 +92,10 @@ public class STKInStockService extends FinKingDeeService {
JSONObject result = (JSONObject)jsonObject.get("Result");
JSONObject responseStatus = (JSONObject)result.get("ResponseStatus");
log.info("kingDataInfoByNumber:{}",kingDataInfoByNumber.getData());
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
kingDeeOrgAndDeptCode.setOrgCode(stkInStock.getTOrgId());
kingDeeOrgAndDeptCode = KingDeeUtils.orgAndDeptCodeMerge(kingDeeOrgAndDeptCode);
stkInStock.setTOrgId(kingDeeOrgAndDeptCode.getOrgCode());
if(responseStatus!=null){//不存在该物料
//新增物料
f.setFLot("");

Loading…
Cancel
Save