Browse Source

移动端开票申请、欠款开票维护开票信息和客户

master
God 2 years ago
parent
commit
5f5c062ff3
  1. 8
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerService.java
  2. 106
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehinstall/BaseVehinstallService.java
  3. 10
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java
  4. 4
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingDetailsVo.java
  5. 8
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingService.java

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

@ -543,12 +543,12 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
FinBillVehicleDetailsVo finBillVehicleDetailsVo = finBillVehicleFeign.fetchByVehSid(vehSid).getData(); FinBillVehicleDetailsVo finBillVehicleDetailsVo = finBillVehicleFeign.fetchByVehSid(vehSid).getData();
FinBillApplicationDetailsVo finBillApplicationDetailsVo = null; FinBillApplicationDetailsVo finBillApplicationDetailsVo = null;
if (finBillVehicleDetailsVo == null) { if (finBillVehicleDetailsVo == null) {
return rb.setMsg("关联的主车开票,不可出库"); return rb.setMsg("关联的主车开票申请未审批通过,不可出库");
} else { } else {
String billAppSid = finBillVehicleDetailsVo.getBillAppSid(); String billAppSid = finBillVehicleDetailsVo.getBillAppSid();
finBillApplicationDetailsVo = finBillApplicationFeign.fetchDetailsBySid(billAppSid).getData(); finBillApplicationDetailsVo = finBillApplicationFeign.fetchDetailsBySid(billAppSid).getData();
if (!finBillApplicationDetailsVo.getNodeState().equals("已办结")) { if (!finBillApplicationDetailsVo.getNodeState().equals("已办结")) {
return rb.setMsg("关联的主车开票,不可出库"); return rb.setMsg("关联的主车开票申请未审批通过,不可出库");
} }
} }
BaseVehicleOutDetailsVo baseVehicleOutDetailsVo = baseVehicleOutService.selByOrgSidAndVehSid(baseTrailer.getUseOrgSid(), vehSid); BaseVehicleOutDetailsVo baseVehicleOutDetailsVo = baseVehicleOutService.selByOrgSidAndVehSid(baseTrailer.getUseOrgSid(), vehSid);
@ -847,12 +847,12 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
FinBillVehicleDetailsVo finBillVehicleDetailsVo = finBillVehicleFeign.fetchByVehSid(vehSid).getData(); FinBillVehicleDetailsVo finBillVehicleDetailsVo = finBillVehicleFeign.fetchByVehSid(vehSid).getData();
FinBillApplicationDetailsVo finBillApplicationDetailsVo = null; FinBillApplicationDetailsVo finBillApplicationDetailsVo = null;
if (finBillVehicleDetailsVo == null) { if (finBillVehicleDetailsVo == null) {
return rb.setMsg("关联的主车开票,不可出库"); return rb.setMsg("关联的主车开票申请未审批通过,不可出库");
} else { } else {
String billAppSid = finBillVehicleDetailsVo.getBillAppSid(); String billAppSid = finBillVehicleDetailsVo.getBillAppSid();
finBillApplicationDetailsVo = finBillApplicationFeign.fetchDetailsBySid(billAppSid).getData(); finBillApplicationDetailsVo = finBillApplicationFeign.fetchDetailsBySid(billAppSid).getData();
if (!finBillApplicationDetailsVo.getNodeState().equals("已办结")) { if (!finBillApplicationDetailsVo.getNodeState().equals("已办结")) {
return rb.setMsg("关联的主车开票,不可出库"); return rb.setMsg("关联的主车开票申请未审批通过,不可出库");
} }
} }
//生成单据编号 //生成单据编号

106
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehinstall/BaseVehinstallService.java

@ -72,6 +72,7 @@ import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.UUID;
/** /**
* Project: anrui-base(上装配置管理) <br/> * Project: anrui-base(上装配置管理) <br/>
@ -426,6 +427,44 @@ public class BaseVehinstallService extends MybatisBaseService<BaseVehinstallMapp
} }
} }
private SalOutStock createSzOrGcSalOutStockNew(BaseVehicle baseVehicle, BaseVehicleOut baseVehicleOut, BaseVehicleOutApply baseVehicleOutApply) {
SalOutStock salOutStock = new SalOutStock();
//单据编号
salOutStock.setFBillNo(baseVehicleOutApply.getBillNo());
//日期
salOutStock.setFDate(DateUtil.today());
//分公司id
BasePurchaseSystemDetailsVo basePurchaseSystemDetailsVo = basePurchaseSystemService.fetchDetailsByDeptSid(baseVehicle.getPurchaseSystemSid()).getData();
salOutStock.setFSaleOrgId(basePurchaseSystemDetailsVo.getOrgCode());
//客户
salOutStock.setFCustomerID(baseVehicleOutApply.getContractNo());
//销售部门id
String orgDeptSid = baseVehicleOutApply.getOrgSid();
ResultBean<SysOrganizationVo> resultBean = sysOrganizationFeign.fetchBySid(orgDeptSid);
if (resultBean.getSuccess()) {
SysOrganizationVo vo = resultBean.getData();
if (vo != null) {
salOutStock.setFSaleDeptID(vo.getOrgCode());
}
}
//项目类别key和项目类别type
salOutStock.setF_PAEZ_AssistantType("payType");
//销售类型-外采挂车映射
salOutStock.setF_PAEZ_AssistantKey("009");
//物料列表
List<SalOutStock.FEntity> fEntityList = new ArrayList<>();
SalOutStock.FEntity fEntity = new SalOutStock.FEntity();
//单价
fEntity.setFPrice(baseVehicleOut.getPrice().toString());
//物料编码
fEntity.setFMaterialID(baseVehicleOut.getMaterialCode());
//仓库id
fEntity.setFStockID("ARZSCK");
fEntityList.add(fEntity);
salOutStock.setFEntity(fEntityList);
return salOutStock;
}
public ResultBean vehinstallOutNew(String sid) { public ResultBean vehinstallOutNew(String sid) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
BaseVehinstall baseVehinstall = fetchBySid(sid); BaseVehinstall baseVehinstall = fetchBySid(sid);
@ -437,11 +476,7 @@ public class BaseVehinstallService extends MybatisBaseService<BaseVehinstallMapp
if (!vehicleState.equals("0002")) { if (!vehicleState.equals("0002")) {
return rb.setMsg("此主车车辆库存状态不是出库,请重新选择"); return rb.setMsg("此主车车辆库存状态不是出库,请重新选择");
} }
BaseVehicleOutDetailsVo baseVehicleOutDetailsVo = baseVehicleOutService.selByOrgSidAndVehSid(baseVehinstall.getCreateOrg(), baseVehicle.getSid()); //生成单据编号
BaseVehicleOut baseVehicleOut = new BaseVehicleOut();
BeanUtil.copyProperties(baseVehicleOutDetailsVo, baseVehicleOut, "sid");
baseVehicleOut.setTypeKey("003");
baseVehicleOut.setType("上装挂车");
String billNo = ""; String billNo = "";
BasePurchaseSystemDetailsVo basePurchaseSystemDetailsVo = basePurchaseSystemService.fetchDetailsByDeptSid(baseVehicle.getPurchaseSystemSid()).getData(); BasePurchaseSystemDetailsVo basePurchaseSystemDetailsVo = basePurchaseSystemService.fetchDetailsByDeptSid(baseVehicle.getPurchaseSystemSid()).getData();
String date = DateUtil.format(DateUtil.date(), "yyyyMM"); String date = DateUtil.format(DateUtil.date(), "yyyyMM");
@ -452,69 +487,40 @@ public class BaseVehinstallService extends MybatisBaseService<BaseVehinstallMapp
} else { } else {
billNo = Rule.getBillNo(billNo, 0); billNo = Rule.getBillNo(billNo, 0);
} }
baseVehicleOut.setBillNo(billNo); BaseVehicleOutDetailsVo baseVehicleOutDetailsVo = baseVehicleOutService.selByOrgSidAndVehSid(baseVehinstall.getCreateOrg(), baseVehicle.getSid());
baseVehicleOut.setTrailerOrInstallMGroupCode("99.02"); BaseVehicleOutApply baseVehicleOutApply = baseVehicleOutApplyService.fetchBySid(baseVehicleOutDetailsVo.getMainSid());
baseVehicleOut.setTrailerOrInstallMGroupName("挂车"); //出库主表信息录入
baseVehicleOut.setTrailerOrInstallCode(baseVehinstall.getVinNo().substring(baseVehinstall.getVinNo().length() - 8) + "SZ"); baseVehicleOutApply.setSid(UUID.randomUUID().toString());
baseVehicleOut.setSzOrGCSid(baseVehinstall.getSid());
baseVehicleOut.setTrailerOrInstallName("上装");
BaseVehinstallmodel baseVehinstallmodel = baseVehinstallmodelService.fetchBySid(baseVehinstall.getMainSid());
String wk_long = baseVehinstallmodel.getWk_long();
String wk_wide = baseVehinstallmodel.getWk_wide();
String wk_high = baseVehinstallmodel.getWk_high();
String installName = baseVehinstallmodel.getInstallNameValue();
StringBuilder vehinstallmodel = new StringBuilder();
vehinstallmodel.append(installName).append("(").append("长").append(wk_long).append("mm,").append("宽").append(wk_wide).append("mm,").append("高").append(wk_high).append("mm").append(")");
baseVehicleOut.setTrailerOrInstall(vehinstallmodel.toString());
baseVehicleOut.setTrailerOrInstallDealPrice(baseVehinstall.getGuidePrice());
//备注
String remarks1 = createRemarks(baseVehicleOut);
String remarks2 = baseVehicleOut.getRemarks();
String remarks3 = remarks2 + remarks1;
if ("null".equals(remarks3)) {
remarks3 = "";
}
baseVehicleOut.setRemarks(remarks3);
BaseVehicleOutApply baseVehicleOutApply = new BaseVehicleOutApply();
baseVehicleOutApply.setBillNo(billNo); baseVehicleOutApply.setBillNo(billNo);
baseVehicleOutApply.setSaleDate(baseVehicleOut.getSaleDate());
baseVehicleOutApply.setCustomerSid(baseVehicleOut.getCustomerSid());
baseVehicleOutApply.setCustomerName(baseVehicleOut.getCustomerName());
baseVehicleOutApply.setMobile(baseVehicleOut.getMobile());
baseVehicleOutApply.setOrgSid(baseVehicleOut.getOrgSid());
baseVehicleOutApply.setOrgName(baseVehicleOut.getOrgName());
baseVehicleOutApply.setStaffSid(baseVehicleOut.getStaffSid());
baseVehicleOutApply.setStaffName(baseVehicleOut.getStaffName());
baseVehicleOutApply.setMakeListSid(baseVehicleOut.getCreateBySid());
baseVehicleOutApply.setMakeListName(baseVehicleOut.getCreateByName());
baseVehicleOutApply.setMakeListDate(DateUtil.format(new Date(), "yyyy-MM-dd"));
baseVehicleOutApply.setSaleTypeKey(baseVehicleOut.getTypeKey());
baseVehicleOutApply.setSaleTypeValue(baseVehicleOut.getType());
baseVehicleOutApply.setCreateOrgSid(baseVehicleOut.getCreateOrgSid());
baseVehicleOutApply.setCreateBySid(baseVehicleOut.getCreateBySid());
//保存车辆出库单主表 //保存车辆出库单主表
baseVehicleOutApplyService.save(baseVehicleOutApply); baseVehicleOutApplyService.save(baseVehicleOutApply);
BaseVehicleOut baseVehicleOut = new BaseVehicleOut();
baseVehicleOut.setCreateBySid(baseVehicleOutApply.getCreateBySid());
baseVehicleOut.setZcMGroupCode("99.02");
baseVehicleOut.setZcMGroupName("挂车");
baseVehicleOut.setVinSid(baseVehicle.getSid());
baseVehicleOut.setPrice(new BigDecimal(baseVehinstall.getGuidePrice()));
//出库单子表关联主表sid //出库单子表关联主表sid
baseVehicleOut.setMainSid(baseVehicleOutApply.getSid()); baseVehicleOut.setMainSid(baseVehicleOutApply.getSid());
baseVehicleOut.setCreateBySid(baseVehicleOut.getCreateBySid());
baseVehicleOut.setCreateByName(baseVehicleOut.getCreateByName());
baseVehicleOut.setManPurOrderTypeKey(baseVehicle.getManPurOrderTypeKey()); baseVehicleOut.setManPurOrderTypeKey(baseVehicle.getManPurOrderTypeKey());
baseVehicleOut.setManPurOrderTypeValue(baseVehicle.getManPurOrderTypeValue()); baseVehicleOut.setManPurOrderTypeValue(baseVehicle.getManPurOrderTypeValue());
baseVehicleOut.setMaterialCode(baseVehicle.getVinNo().substring(baseVehicle.getVinNo().length() - 8) + "SZ");
baseVehicleOut.setMaterialName("上装");
baseVehicleOut.setMaterialTypeKey("003");
baseVehicleOut.setMaterialTypeValue("上装");
baseVehicleOut.setMaterialSid(baseVehinstall.getSid());
//保存车辆出库单子表 //保存车辆出库单子表
baseVehicleOutService.save(baseVehicleOut); baseVehicleOutService.save(baseVehicleOut);
//推送金蝶上装销售出库单 //推送金蝶上装销售出库单
SalOutStock salOutStock = createSzOrGcSalOutStock(baseVehinstall, baseVehicle, baseVehicleOut); SalOutStock salOutStock = createSzOrGcSalOutStockNew(baseVehicle, baseVehicleOut, baseVehicleOutApply);
finKingDeeFeign.draftSalOutStock(salOutStock); finKingDeeFeign.draftSalOutStock(salOutStock);
List<SalOutStock.FEntity> fEntity = salOutStock.getFEntity(); List<SalOutStock.FEntity> fEntity = salOutStock.getFEntity();
for (SalOutStock.FEntity entity : fEntity) { for (SalOutStock.FEntity entity : fEntity) {
String substring = entity.getFMaterialID().substring(entity.getFMaterialID().length() - 1);
if ("Z".equals(substring)) {
baseVehinstall.setVehicleStateKey(VehicleState.StockEnum.OUT_STOCK.getCode()); baseVehinstall.setVehicleStateKey(VehicleState.StockEnum.OUT_STOCK.getCode());
baseVehinstall.setVehicleStateValue(VehicleState.StockEnum.OUT_STOCK.getRemarks()); baseVehinstall.setVehicleStateValue(VehicleState.StockEnum.OUT_STOCK.getRemarks());
baseVehinstall.setSalesDate(DateUtil.formatDate(new Date())); baseVehinstall.setSalesDate(DateUtil.formatDate(new Date()));
saveOrUpdate(baseVehinstall); saveOrUpdate(baseVehinstall);
} }
}
return rb.success(); return rb.success();
} }
} }

10
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java

@ -1161,16 +1161,10 @@ public class CrmCustomerTempService extends MybatisBaseService<CrmCustomerTempMa
crmAppDisAndCustm.setExtra(crmExtra); crmAppDisAndCustm.setExtra(crmExtra);
return rb.success().setData(crmAppDisAndCustm); return rb.success().setData(crmAppDisAndCustm);
} }
CrmCustomerTemp crmCustomerTemp = fetchBySid(dtoSid);
CrmCustomerTempUpdateDto crmCustomerTempDto = new CrmCustomerTempUpdateDto(); CrmCustomerTempUpdateDto crmCustomerTempDto = new CrmCustomerTempUpdateDto();
crmCustomerTempDto.setName(name); BeanUtils.copyProperties(crmCustomerTemp,crmCustomerTempDto);
crmCustomerTempDto.setIDNumber(dto.getTaxpayerNo()); crmCustomerTempDto.setIDNumber(dto.getTaxpayerNo());
crmCustomerTempDto.setMobile(phone);
crmCustomerTempDto.setUserSid(dto.getCreateBySid());
crmCustomerTempDto.setOrgPath(dto.getOrgSidPath());
crmCustomerTempDto.setCertificateTypeKey("01");
crmCustomerTempDto.setCertificateType("身份证");
crmCustomerTempDto.setCustomerTypeKey("1");
crmCustomerTempDto.setCustomerType("个人");
ResultBean resultBean = updateCrmCustomer(crmCustomerTempDto, dtoSid); ResultBean resultBean = updateCrmCustomer(crmCustomerTempDto, dtoSid);
if (!resultBean.getSuccess()) { if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg()); return rb.setMsg(resultBean.getMsg());

4
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincompanyinvoicing/FinCompanyInvoicingDetailsVo.java

@ -73,4 +73,8 @@ public class FinCompanyInvoicingDetailsVo implements Vo {
private String purchaseSystemName; // 采购系统名称 private String purchaseSystemName; // 采购系统名称
@ApiModelProperty("组织全路径") @ApiModelProperty("组织全路径")
private String orgSidPath; private String orgSidPath;
@ApiModelProperty("业务员sid")
private String staffSid;
@ApiModelProperty("创建人sid")
private String createBySid;
} }

8
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincompanyinvoicing/FinCompanyInvoicingService.java

@ -390,14 +390,20 @@ public class FinCompanyInvoicingService extends MybatisBaseService<FinCompanyInv
public ResultBean<FinCompanyInvoicingDetailsVo> qyAppFetchDetailsBySid(String sid) { public ResultBean<FinCompanyInvoicingDetailsVo> qyAppFetchDetailsBySid(String sid) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = fetchDetailsVoBySid(sid); FinCompanyInvoicingDetailsVo finCompanyInvoicingDetailsVo = fetchDetailsVoBySid(sid);
if (finCompanyInvoicingDetailsVo != null) { if (StringUtils.isNotBlank(finCompanyInvoicingDetailsVo.getSid())) {
return rb.success().setData(finCompanyInvoicingDetailsVo); return rb.success().setData(finCompanyInvoicingDetailsVo);
} }
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempFeign.fetchSid(sid).getData(); CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempFeign.fetchSid(sid).getData();
if (crmCustomerTempVo == null){
return rb.setMsg("该开票名称不存在,请重新选择");
}
finCompanyInvoicingDetailsVo.setSid(crmCustomerTempVo.getSid()); finCompanyInvoicingDetailsVo.setSid(crmCustomerTempVo.getSid());
finCompanyInvoicingDetailsVo.setName(crmCustomerTempVo.getName()); finCompanyInvoicingDetailsVo.setName(crmCustomerTempVo.getName());
finCompanyInvoicingDetailsVo.setPhone(crmCustomerTempVo.getMobile()); finCompanyInvoicingDetailsVo.setPhone(crmCustomerTempVo.getMobile());
finCompanyInvoicingDetailsVo.setTaxpayerNo(crmCustomerTempVo.getIDNumber()); finCompanyInvoicingDetailsVo.setTaxpayerNo(crmCustomerTempVo.getIDNumber());
finCompanyInvoicingDetailsVo.setStaffSid(crmCustomerTempVo.getStaffSid());
finCompanyInvoicingDetailsVo.setCreateBySid(crmCustomerTempVo.getCreateBySid());
finCompanyInvoicingDetailsVo.setStaffSid(crmCustomerTempVo.getStaffSid());
return rb.success().setData(finCompanyInvoicingDetailsVo); return rb.success().setData(finCompanyInvoicingDetailsVo);
} }
} }
Loading…
Cancel
Save