Browse Source

Merge remote-tracking branch 'origin/master'

master
fanzongzhe 2 years ago
parent
commit
df27a4aa41
  1. 4
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderDetailsVo.java
  2. 2
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java
  3. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/AppBusSalesOrderVo.java
  4. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml
  5. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java
  6. 158
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  7. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderinsurance/BusSalesOrderInsuranceMapper.xml
  8. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermodel/BusSalesOrderModelMapper.xml
  9. 3155
      anrui-buscenter/anrui-buscenter-biz/src/main/resources/ftl/xsddsp1.ftl
  10. 21
      anrui-buscenter/anrui-buscenter-ui/src/api/jichuxinxi/dingdanchaxun.js
  11. 126
      anrui-buscenter/anrui-buscenter-ui/src/api/salesManagement/orderManagement.js
  12. 20
      anrui-buscenter/anrui-buscenter-ui/src/router/index.js
  13. 4
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehudangan/kehudanganAdd.vue
  14. 305
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/relation/financialscheme.vue
  15. 1376
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdan.vue
  16. 752
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByCaiGou.vue
  17. 1182
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanInfo.vue
  18. 325
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/dingdanchaxun/xiaoshoudingdanchaxun.vue
  19. 305
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/relation/financialscheme.vue
  20. 2
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdan.vue
  21. 1084
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdanInfo.vue
  22. 1
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.xml
  23. 10
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java

4
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderDetailsVo.java

@ -27,7 +27,6 @@ package com.yxt.anrui.buscenter.api.bussalesorder;
import com.yxt.anrui.buscenter.api.busdepositfictitious.BusDepositFictitiousDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderModelInfoVo;
import com.yxt.anrui.buscenter.api.bussalesorderdeposit.BusSalesOrderDepositDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscountDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderinsurance.BusSalesOrderInsuranceDetailsVo;
@ -167,4 +166,7 @@ public class BusSalesOrderDetailsVo implements Vo {
private boolean finPlanState;
private SolutionsDetailsssVo solutionsDetailsssVo;
private String purchaseSystemSid;
private String purchaseSystemName;
}

2
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java

@ -287,5 +287,5 @@ public interface BusSalesOrderFeign {
@ApiOperation("生成销售订单PDF")
@PostMapping("/createPdf")
@ResponseBody
public ResultBean createPdf(@RequestParam("sid") String sid,@RequestParam("userName") String userName);
public ResultBean<String> createPdf(@RequestParam("sid") String sid,@RequestParam("userName") String userName);
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/AppBusSalesOrderVo.java

@ -155,4 +155,9 @@ public class AppBusSalesOrderVo implements Vo {
private String saler;
@ApiModelProperty("是否显示打印按钮")
private boolean printOrderBtn;
@ApiModelProperty("流程定义id")
private String procDefId;
@ApiModelProperty("流程实例id")
private String procInstId;
}

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml

@ -61,7 +61,9 @@
0 as showFinancialBtn,
bo.type,
bo.contractNo as contractId,
bo.staffName as saler
bo.staffName as saler,
bo.procDefId,
bo.procInstId
FROM bus_sales_order bo
left join bus_sales_order_price bp on bp.salesOrderSid = bo.sid
left join bus_sales_order_deposit bd on bd.salesOrderSid = bo.sid

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java

@ -340,7 +340,7 @@ public class BusSalesOrderRest implements BusSalesOrderFeign {
}
@Override
public ResultBean createPdf(String sid, String userName) {
public ResultBean<String> createPdf(String sid, String userName) {
return busSalesOrderService.createPdf(sid,userName);
}
}

158
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java

@ -149,16 +149,14 @@ import com.yxt.anrui.scm.api.scmwarehouse.ScmWarehouseFeign;
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.ConstantUtils;
import com.yxt.common.base.utils.DateUtils;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.WordUtils;
import com.yxt.common.base.utils.*;
import com.yxt.common.base.utils.Base64;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessageFlowVo;
import com.yxt.messagecenter.api.message.MessageFlowableQuery;
import com.yxt.messagecenter.api.message.*;
import com.yxt.messagecenter.api.messagelist.MessageList;
import com.yxt.messagecenter.api.messagelist.MessageListFeign;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -166,8 +164,12 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.io.*;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.util.*;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
@ -250,6 +252,8 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
@Autowired
private MessageFeign messageFeign;
@Autowired
private MessageListFeign messageListFeign;
@Autowired
private BusDepositService busDepositService;
@Autowired
private BusDepositVehicleService busDepositVehicleService;
@ -5015,8 +5019,10 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
public ResultBean createPdf(String sid, String userName) {
public ResultBean<String> createPdf(String sid, String userName) {
ResultBean rb = ResultBean.fireFail();
List<String> photoList = new ArrayList<>();
List<String> imgList = new ArrayList<>();
BusSalesOrder busSalesOrder = fetchBySid(sid);
Map<String, Object> dataMap = new HashMap();
//获取创建人姓名
@ -5067,8 +5073,33 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderSourceLCVo.setComment(processCommentVo.get("content").toString());
busSalesOrderSourceLCVo.setSpsj(processCommentVo.get("time").toString());
busSalesOrderSourceLCVos.add(busSalesOrderSourceLCVo);
List<String> fileList = (List) processCommentVo.get("fileList");
if (fileList.size() > 0){
for (String s : fileList) {
imgList.add(s);
}
}
}
}
List<Message> messages = messageFeign.selectByBusinessSid(busSalesOrder.getSid()).getData();
if (messages.size() > 0){
for (Message message : messages) {
BusSalesOrderSourceLCVo busSalesOrderSourceLCVo = new BusSalesOrderSourceLCVo();
String receiverNames = "";
List<MessageList> messageLists = messageListFeign.fetchByMainSid(message.getSid()).getData();
if (messageLists.size() > 0){
for (MessageList messageList : messageLists) {
receiverNames = receiverNames + messageList.getReceiverName() + ",";
}
}
busSalesOrderSourceLCVo.setName("系统");
busSalesOrderSourceLCVo.setComment("抄送 " + receiverNames.substring(0,receiverNames.lastIndexOf(",")));
busSalesOrderSourceLCVo.setSpsj(DateUtil.format(message.getCreateTime(),"yyyy-MM-dd HH:mm:ss"));
busSalesOrderSourceLCVos.add(busSalesOrderSourceLCVo);
}
}
Collections.reverse(busSalesOrderSourceLCVos);
//busSalesOrderSourceLCVos.sort(comparing(BusSalesOrderSourceLCVo::getSpsj));
dataMap.put("lcList", busSalesOrderSourceLCVos);
//创建时间
dataMap.put("time", DateUtil.format(busSalesOrder.getCreateTime(), "yyyy-MM-dd"));
@ -5089,7 +5120,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
dataMap.put("vehModel", busSalesOrderModel.getModelName());
//销售指导价
BusSalesOrderPrice busSalesOrderPrice = busSalesOrderPriceService.selectBySalesOrderSid(busSalesOrder.getSid());
dataMap.put("salePrice", busSalesOrderPrice.getSingleGuildPrice());
dataMap.put("salePrice", busSalesOrderPrice.getSingleGuildPrice().toString());
//合同价格
CommonContract commonContract = commonContractFeign.selectByNo(busSalesOrder.getContractNo()).getData();
dataMap.put("conPrice", commonContract.getContractAmount());
@ -5118,7 +5149,15 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
//是否返利
BusSalesOrderSubmit busSalesOrderSubmit = busSalesOrderSubmitService.selectBySaleOrderSid(busSalesOrder.getSid());
dataMap.put("isfl", busSalesOrderSubmit == null ? "否" : "是");
if (busSalesOrderSubmit != null){
if (StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorName()) || StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorNameTwo())){
dataMap.put("isfl", "是");
}else {
dataMap.put("isfl", "否");
}
}else {
dataMap.put("isfl", "否");
}
//返利备案表
List<BusSalesOrderFL> busSalesOrderFLS = new ArrayList<>();
//价格信息中获取数量
@ -5156,6 +5195,14 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderFLS.add(busSalesOrderFL);
}
dataMap.put("flList", busSalesOrderFLS);
//是否显示金融信息备案
if ("2".equals(busSalesOrder.getPayTypeKey())){
dataMap.put("isXS", "否");
}else if ("1".equals(busSalesOrder.getPayTypeKey()) && "1".equals(busSalesOrder.getFinancePlan())){
dataMap.put("isXS", "否");
}else {
dataMap.put("isXS", "是");
}
//金融信息备案
//资方
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsFeign.selectDetails(busSalesOrder.getSid()).getData();
@ -5169,14 +5216,32 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//备注
dataMap.put("bz", busSalesOrder.getNotes());
//获取图片路径
List<String> photoList = new ArrayList<>();
if (StringUtils.isNotBlank(busSalesOrder.getImagesFile())){
String notesImage = busSalesOrder.getImagesFile();
String[] notesImages = notesImage.split(",");
for (String image : notesImages) {
String urlPrefix = fileUploadComponent.getUrlPrefix();
image = urlPrefix + image;
photoList.add(image);
try {
image = urlPrefix + URLEncoder.encode(image, "utf-8");
String image2Base64 = image2Base64(image);
photoList.add(image2Base64);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}
if (imgList.size() > 0){
for (String image : imgList) {
if (image.contains(fileUploadComponent.getUrlPrefix())) {
image = image.replace(fileUploadComponent.getUrlPrefix(), "");
try {
image = fileUploadComponent.getUrlPrefix() + URLEncoder.encode(image, "utf-8");
String image2Base64 = image2Base64(image);
photoList.add(image2Base64);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}
}
dataMap.put("photoPath64", photoList);
@ -5195,6 +5260,71 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//生成出门证文件名
String pdfName = "销售订单审批_" + dateStr + seconds + ".pdf";
WordUtils.doc2pdf(wordPath, targetPath, pdfName, userName);
return rb.success();
return rb.success().setData("/template/" + dateStr + "/" + pdfName);
}
/*public static String image2Base64(String imgUrl) {
byte[] data = null;
// 读取图片字节数组
try {
InputStream in = new FileInputStream(imgUrl);
System.out.println("文件大小(字节)=" + in.available());
data = new byte[in.available()];
in.read(data);
in.close();
} catch (IOException e) {
e.printStackTrace();
}
// 对字节数组进行Base64编码,得到Base64编码的字符串
java.util.Base64.Encoder encoder = Base64.getEncoder();
String base64Str = encoder.encodeToString(data);
return base64Str;
}*/
public static String image2Base64(String imgUrl) {
URL url = null;
InputStream is = null;
ByteArrayOutputStream outStream = null;
HttpURLConnection httpUrl = null;
try {
url = new URL(imgUrl);
httpUrl = (HttpURLConnection) url.openConnection();
httpUrl.connect();
httpUrl.getInputStream();
is = httpUrl.getInputStream();
outStream = new ByteArrayOutputStream();
//创建一个Buffer字符串
byte[] buffer = new byte[1024];
//每次读取的字符串长度,如果为-1,代表全部读取完毕
int len = 0;
//使用一个输入流从buffer里把数据读取出来
while ((len = is.read(buffer)) != -1) {
//用输出流往buffer里写入数据,中间参数代表从哪个位置开始读,len代表读取的长度
outStream.write(buffer, 0, len);
}
// 对字节数组Base64编码
return Base64.encode(outStream.toByteArray());
} catch (Exception e) {
e.printStackTrace();
} finally {
if (is != null) {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (outStream != null) {
try {
outStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (httpUrl != null) {
httpUrl.disconnect();
}
}
return imgUrl;
}
}

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderinsurance/BusSalesOrderInsuranceMapper.xml

@ -8,7 +8,7 @@
resultType="com.yxt.anrui.buscenter.api.bussalesorderinsurance.BusSalesOrderInsuranceDetailsVo">
SELECT *
FROM bus_sales_order_insurance
WHERE salesOrderSid = #{sid}
WHERE salesOrderSid = #{saleOrderSid}
</select>
<delete id="deleteByOrderSid">

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermodel/BusSalesOrderModelMapper.xml

@ -21,7 +21,9 @@
guildPrice,
finalPrice,
brandName,
brandSid
brandSid,
publicModelSon,
publicModel
from bus_sales_order_model
where salesOrderSid = #{sid}
</select>

3155
anrui-buscenter/anrui-buscenter-biz/src/main/resources/ftl/xsddsp1.ftl

File diff suppressed because it is too large

21
anrui-buscenter/anrui-buscenter-ui/src/api/jichuxinxi/dingdanchaxun.js

@ -0,0 +1,21 @@
import request from '@/utils/request'
export default {
// 查询分页列表
listPage: function(data) {
return request({
url: '/buscenter/v1/bussalesorder/getSaleOrdersByOrgPath',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
})
},
// 通过sid作废一条或多条记录
createPdf: function(data) {
return request({
url: '/buscenter/v1/bussalesorder/createPdf',
method: 'post',
params: data
})
}
}

126
anrui-buscenter/anrui-buscenter-ui/src/api/salesManagement/orderManagement.js

@ -1,59 +1,137 @@
import request from "@/utils/request";
import request from '@/utils/request'
// ----------------------------------- 订单管理
// 销售订单管理列表 已改
// 销售订单管理列表
export function getListPage(data) {
return request({
url: "/buscenter/v1/bussalesorder/listPage",
method: "post",
url: '/buscenter/v1/bussalesorder/listPage',
method: 'post',
data: data,
headers: {
"Content-Type": "application/json"
'Content-Type': 'application/json'
}
});
})
}
// 销售订单批量删除销售订单 已改
// 销售订单批量删除销售订单
export function delBySids(data) {
return request({
url: "/buscenter/v1/bussalesorder/delBySids",
method: "delete",
url: '/buscenter/v1/bussalesorder/delBySids',
method: 'delete',
data: data,
headers: {
"Content-Type": "application/json"
'Content-Type': 'application/json'
}
});
}
// 销售订单新增保存 已改
// 销售订单新增保存
export function saveOrderForm(data) {
return request({
url: "/buscenter/v1/bussalesorder/saveOrUpdate",
method: "post",
url: '/buscenter/v1/bussalesorder/saveOrUpdate',
method: 'post',
data: data,
headers: {
"Content-Type": "application/json"
'Content-Type': 'application/json'
}
});
}
// 编辑、详情初始化 已改(8.9修改后)
export function fetchDetailsBySid(params) {
// 编辑、详情初始化
export function fetchDetailsBySid(data) {
return request({
url: "/buscenter/v1/bussalesorder/fetchDetailsBySid/" + params.sid,
method: "get",
params: params,
});
url: '/buscenter/v1/bussalesorder/fetchDetailsBySid/' + data,
method: 'get'
})
}
// 销售订单提交接口 (8.9修改后)
export function submitOrderForm(params) {
return request({
url: "/buscenter/v1/bussalesorder/submit",
method: "post",
url: '/buscenter/v1/bussalesorder/submit',
method: 'post',
data: params,
headers: {
"Content-Type": "application/json"
'Content-Type': 'application/json'
}
});
})
}
// 流程审批(同意)
export function complete(params) {
return request({
url: '/buscenter/v1/bussalesorder/complete',
method: 'put',
data: params,
headers: {
'Content-Type': 'application/json'
}
})
}
// 流程审批(同意--可选择采购系统)
export function completeBy(params) {
return request({
url: '/buscenter/v1/bussalesorder/completeBy',
method: 'put',
data: params,
headers: {
'Content-Type': 'application/json'
}
})
}
// 流程审批(终止)
export function breakProcess(params) {
return request({
url: '/buscenter/v1/bussalesorder/breakProcess',
method: 'put',
data: params,
headers: {
'Content-Type': 'application/json'
}
})
}
// 流程审批(驳回)
export function reject(params) {
return request({
url: '/buscenter/v1/bussalesorder/reject',
method: 'put',
data: params,
headers: {
'Content-Type': 'application/json'
}
})
}
// 流程审批(撤回)
export function revokeProcess(params) {
return request({
url: '/buscenter/v1/bussalesorder/revokeProcess',
method: 'put',
data: params,
headers: {
'Content-Type': 'application/json'
}
})
}
// 流程审批(获取下一环节)
export function getNextNodesForSubmit(data) {
return request({
url: '/buscenter/v1/bussalesorder/getNextNodesForSubmit',
method: 'get',
params: data
})
}
// 流程审批(获取上一环节)
export function getPreviousNodesForReject(data) {
return request({
url: '/buscenter/v1/bussalesorder/getPreviousNodesForReject',
method: 'get',
params: data
})
}
// 外联表接口

20
anrui-buscenter/anrui-buscenter-ui/src/router/index.js

@ -217,6 +217,15 @@ export const constantRoutes = [
title: '销售让价权限管理'
}
},
{
path: '/xiaoshouguanli/dingdanchaxun',
component: () =>
import('@/views/xiaoshouguanli/dingdanchaxun/xiaoshoudingdanchaxun.vue'),
name: 'XiaoShouDingDanChaXun',
meta: {
title: '销售订单查询', noCache: true
}
},
{
path: '/xiaoshouguanli/guachepeizhixinxi',
component: () =>
@ -487,14 +496,21 @@ export const constantRoutes = [
path: '/xiaoshouguanliFlow/xiaoshoudingdan/xiaoshoudingdan',
component: () =>
import('@/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdan.vue'),
name: 'xiaoshoudingdanFlow'
name: 'XiaoShouDingDanDaiBanInfo'
},
// 销售管理已办详情
{
path: '/xiaoshouguanliFlow/xiaoshoudingdan/xiaoshoudingdanInfo',
component: () =>
import('@/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanInfo.vue'),
name: 'xiaoshoudingdanFlowInfo'
name: 'XiaoShouDingDanYiBanInfo'
},
// 销售管理已办详情--销售支出部经理审批环节--选择采购系统
{
path: '/xiaoshouguanliFlow/xiaoshoudingdan/xiaoshoudingdanByCaiGou',
component: () =>
import('@/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByCaiGou.vue'),
name: 'xiaoshoudingdanByCaiGou'
},
// 销售管理驳回到发起人办理
{

4
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehudangan/kehudanganAdd.vue

@ -547,7 +547,8 @@ export default {
visitWay: '', //
visitWayKey: '',
userSid: '',
orgSid: ''
orgSid: '',
orgPath: ''
}, //
templooke: {},
dialogFormVisible: false,
@ -945,6 +946,7 @@ export default {
this.$message({ showClose: true, type: 'error', message: '因客户类型为企业,客户名称的长度应不少于5个汉字' })
return
}
this.temp.orgPath = window.sessionStorage.getItem('defaultOrgPath')
if (this.stateId === '0') {
const tip = '客户名称、联系电话一经保存,无法修改,是否继续保存'
this.$confirm(tip, '提示', {

305
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/relation/financialscheme.vue

@ -0,0 +1,305 @@
<template>
<div class="app-container">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="info" size="small" icon="el-icon-close" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="">
<el-form ref="dataForm" :model="formobj" label-position="top" label-width="130px" class="formaddcopy02">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="6">
<div class="span-sty">是否打包</div>
<el-form-item><span class="addinputInfo">{{ formobj.isPack == '1' ? '是' : formobj.isPack == '0' ? '否' : '' }}</span></el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">产品政策</div>
<el-form-item><span class="addinputInfo">{{ formobj.policyName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">融资项目</div>
<el-form-item>
<div class="addinputInfo">
<span>主车发票价{{ formobj.mainVehicleAmount }}</span>
<span>融资票据{{ formobj.accessoriesAmount }}</span>
<span>挂车{{ formobj.trailerAmount }} </span>
<span>购置税{{ formobj.purchaseTax }} </span>
<span>车损上浮{{ formobj.vehDamageFloat }} </span>
</div>
</el-form-item>
</el-col>
<el-col :span="24">
<div class="span-sty">融资项目总额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanTotal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">首付比例</div>
<el-form-item><span class="addinputInfo">{{ formobj.downPayRatio }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">首付金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.downPayAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">产品贷款金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">产品期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanPeriod }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">贷款保证金比例</div>
<el-form-item><span class="addinputInfo">{{ formobj.bondRatio }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.bondAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">厂家贴息</div>
<el-form-item><span class="addinputInfo">{{ formobj.factoryDiscount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">年利率</div>
<el-form-item><span class="addinputInfo">{{ formobj.policyYearRatio }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">月还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanPayMoney }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">利息总额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanInterest }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">厂家贴息用途</div>
<el-form-item><span class="addinputInfo">{{ formobj.factoryDiscountUse }}</span></el-form-item>
</el-col>
</el-row>
<div v-show="formobj.otherPolicyState">
<div class="title">其它融</div>
<el-row>
<el-col :span="12">
<div class="span-sty">其它融名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyName }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">贷款金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.period }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">月还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyMonthlyRepay }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">利息总额</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyInterest }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">年利率</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyYearRatio }}</span></el-form-item>
</el-col>
</el-row>
</div>
<div class="title">方案汇总</div>
<el-row>
<el-col :span="12">
<div class="span-sty">融资首付</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanDownPay }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">总贷款金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanAmountTotal }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.period }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">月还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.monthlyRepay }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">利息总额</div>
<el-form-item><span class="addinputInfo">{{ formobj.interest }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">预计首款还款日</div>
<el-form-item><span class="addinputInfo">{{ formobj.returnTime }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">应收明细</div>
<el-row>
<el-col :span="6">
<div class="span-sty">融资首付</div>
<el-form-item><span class="addinputInfo">{{ formobj.downPayAmounts }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.bondAmounts }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">保险保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.depositPremium }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">落户保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.depositSettle }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">服务费</div>
<el-form-item><span class="addinputInfo">{{ formobj.serviceAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">代收意外险</div>
<el-form-item><span class="addinputInfo">{{ formobj.proxyAccidentPremium }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">上牌费</div>
<el-form-item><span class="addinputInfo">{{ formobj.registerAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">运管费</div>
<el-form-item><span class="addinputInfo">{{ formobj.operationAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">补车价</div>
<el-form-item><span class="addinputInfo">{{ formobj.vehOtherPrice }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">其它费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherAmount }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">其它费用说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherAmountRemark }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">办理方式选择</div>
<el-form-item><span class="addinputInfo">{{ formobj.dealWay }}</span></el-form-item>
</el-col>
<el-col :span="9">
<div class="span-sty">代收首年保险费</div>
<el-form-item><span class="addinputInfo">{{ formobj.proxyPremium }}</span></el-form-item>
</el-col>
<el-col :span="9">
<div class="span-sty">代收购置税</div>
<el-form-item><span class="addinputInfo">{{ formobj.proxyPurchasetax }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">应收合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.receivableTotal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">抵顶费用合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.offsetTotal }}</span></el-form-item>
</el-col>
<el-col :span="9">
<div class="span-sty">抵顶首年保险费</div>
<el-form-item><span class="addinputInfo">{{ formobj.offsetPremium }}</span></el-form-item>
</el-col>
<el-col :span="9">
<div class="span-sty">抵顶购置税</div>
<el-form-item><span class="addinputInfo">{{ formobj.offsetPurchasetax }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">实收合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.realTotal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">车辆总价</div>
<el-form-item><span class="addinputInfo">{{ formobj.vehTotalPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">名义(留购)</div>
<el-form-item><span class="addinputInfo">{{ formobj.nominalPrice }}</span></el-form-item>
</el-col>
<el-col :span="18">
<el-form-item><span class="addinputInfo">结清时需缴纳此费用</span></el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</template>
<script>
export default {
name: 'JinRongFangAnInfo',
data() {
return {
viewTitle: '',
tableKey: 0,
index: 0,
formobj: {
otherPolicyState: false
}
}
},
methods: {
showInfo(value) {
this.viewTitle = '金融方案'
this.formobj = value
},
handleReturn() {
this.$emit('doback')
}
}
}
</script>
<style scoped>
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content .addinputInfo {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

1376
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdan.vue

File diff suppressed because it is too large

752
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByCaiGou.vue

@ -0,0 +1,752 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" @click="openAgree('同意')"> </el-button>
<el-button type="danger" size="small" @click="openReject('驳回')"> </el-button>
<el-button type="danger" size="small" @click="openStop('终止')"> </el-button>
</div>
</div>
<div class="">
<div class="titwu">销售订单</div>
<el-form ref="dataForm" :model="formobj" label-position="top" label-width="130px" class="formaddcopy02">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="8">
<div class="span-sty">订单编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.billNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.concatNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">制单日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">销售机构</div>
<el-form-item><span class="addinputInfo">{{ formobj.useOrgName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">销售部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.orgName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">销售专员</div>
<el-form-item><span class="addinputInfo">{{ formobj.staffName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">客户信息</div>
<el-row>
<el-col :span="12">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">联系电话</div>
<el-form-item><span class="addinputInfo">{{ formobj.mobile }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">挂靠公司</div>
<el-form-item><span class="addinputInfo">{{ formobj.affiliatedCompany }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">销售类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.payType }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开票类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.billingType }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">是否包牌</div>
<el-form-item><span class="addinputInfo">{{ formobj.licensePlateValue }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">车型信息</div>
<el-row>
<el-col :span="24">
<el-form-item><span>{{ formobj.busSalesOrderModel.modelConfig }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24" class="tlineheightb">
<div class="span-sty">常用配置</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderModel.config }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">更多配置</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderModel.moreConfig }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">特殊配置说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderModel.specialConfig }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8" class="tlineheightb">
<div class="span-sty">合格证公告型号</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderModel.publicModel }}</span></el-form-item>
</el-col>
<el-col :span="16" class="tlineheightb">
<el-form-item><span class="addinputInfo" style="margin-left: 0px !important;">{{ formobj.busSalesOrderModel.publicModelSon }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">上装</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderMakeup.topMessage }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">车架号</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderModel.vinNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">采购订单编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderModel.linkNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">需采购</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderPrice.quantity }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">挂车信息</div>
<el-row>
<el-col :span="24">
<el-form-item><span></span></el-form-item>
</el-col>
</el-row>
<div class="title">价格信息</div>
<el-row>
<el-col :span="8">
<div class="span-sty">单台整体指导价</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderPrice.singleGuildPrice }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">主车单台成交价</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderModel.finalPrice }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">单台整体成交价</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderPrice.singleFinalPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">单台折让()</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderPrice.bigDecimalSing }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">台数</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderPrice.quantity }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">车价合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderPrice.priceSum }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<div class="span-sty">计划提车日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderPrice.plannedPickUpDate }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">预计提车地点</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderPrice.plannedPickUpLocation }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">保险说明</div>
<el-row>
<el-col :span="24">
<el-form-item><span>{{ formobj.insuranceInfo }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">订金信息</div>
<el-row>
<el-col :span="12">
<div class="span-sty">单台订金</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderDeposit.deposit }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">订金合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderDeposit.depositAll }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<div class="span-sty">订金缴纳方式</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderDeposit.depositType }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">需补交订金</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderDeposit.makeUpDeposit }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center">款项确认书</div>
<el-form-item><el-image class="addinputInfo" style="width: 178px;height: 178px;" v-for="(item,index) in formobj.busSalesOrderDeposit.paymentConfirmation" :key="index" :src="item" :preview-src-list="formobj.busSalesOrderDeposit.paymentConfirmation"></el-image></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">订金备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderDeposit.depositRemarks }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">优惠套餐</div>
<el-table :key="tableKey" :data="formobj.busSalesOrderDiscountList" :index="index" border style="width: 100%" show-summary :summary-method="getSummaries">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column label="优惠名称" align="left" header-align="center">
<template slot-scope="scope">
{{ scope.row.name }}
</template>
</el-table-column>
<el-table-column label="价值" align="left" header-align="center">
<template slot-scope="scope">
{{ scope.row.price }}
</template>
</el-table-column>
<el-table-column label="优惠项目说明" header-align="center">
<template slot-scope="scope">
{{ scope.row.discountExplain }}
</template>
</el-table-column>
<el-table-column label="数量" header-align="center">
<template slot-scope="scope">
{{ scope.row.num }}
</template>
</el-table-column>
<el-table-column prop="totalValue" label="小计" header-align="center">
<template slot-scope="scope">
{{ scope.row.totalValue }}
</template>
</el-table-column>
</el-table>
<div v-show="formobj.finPlanState" class="jinrong">
<div>金融方案</div>
<div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleLook()">查看</el-button>
</div>
</div>
<div class="title">补充说明</div>
<el-row>
<el-col :span="24">
<el-form-item><span>{{ formobj.notes }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item><el-image style="width: 178px;height: 178px;" v-for="(item,index) in formobj.images" :key="index" :src="item" :preview-src-list="formobj.images"></el-image></el-form-item>
</el-col>
</el-row>
<div class="title">其它信息</div>
<el-row>
<el-col :span="12">
<div class="span-sty">内部引荐人</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.name }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">返利备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.remarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">中介人1</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.distributorName }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">联系电话</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobile }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">单车中介服务费</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.distributorPrice }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">中介服务费合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.middleOneDistributorPriceTotal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">中介人2</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.distributorNameTwo }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">联系电话</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobileTwo }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">单车中介服务费</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.distributorPriceTwo }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">中介服务费合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.busSalesOrderotherMessageDetailsVo.middleTwoDistributorPriceTotal }}</span></el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 选择待办人 的弹出框-->
<el-dialog title="填写审批意见" :visible.sync="nodeDialogVisible" width="80%">
<el-form class="formadd" >
<el-row v-show="currentLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>当前环节:</span>
</el-col>
<el-col :span="20">
<el-form-item><span>{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
</el-col>
</el-row>
<el-row :class="{rowClass:!currentLink}">
<el-col :span="4" class="tleftb">
<span>意见:</span>
</el-col>
<el-col :span="20">
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw" type="textarea" :autosize="{ minRows: 1, maxRows: 10}" clearable ></el-input></el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="reject"> </el-button>
<el-button type="info " size="mini" @click="nodeDialogVisible = false"> </el-button>
</div>
</el-form>
</el-dialog>
<el-dialog :visible.sync="purchaseVisible" width="60%">
<el-form class="formadd">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="6" class="tleftb">
<span><span class="icon">*</span>采购系统:</span>
</el-col>
<el-col :span="18">
<el-form-item>
<el-select v-model="purchaseName" placeholder="请选择" @change="changePurchase" clearable class="">
<el-option v-for="item in purchase_list" :key="item.deptSid" :label="item.purchaseSystemName" :value="item.purchaseSystemName"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="confirm">确定</el-button>
<el-button type="info " size="mini" @click="cancel">取消</el-button>
</div>
</el-form>
</el-dialog>
<financialscheme ref="divInfo" v-show="viewState == 2" @doback="resetState"/>
</div>
</template>
<script>
import { fetchDetailsBySid, completeBy, breakProcess, reject, getNextNodesForSubmit, getPreviousNodesForReject } from '@/api/salesManagement/orderManagement'
import { getOrgSidByPath, fetchDetailsByUseOrgSid } from '@/api/dictcommons/dictcommons'
import financialscheme from './relation/financialscheme'
export default {
name: 'XiaoShouDingDanByCaiGouInfo',
components: {
financialscheme
},
data() {
return {
viewTitle: '',
viewState: 1,
tableKey: 0,
index: 0,
purchase_list: [],
purchaseName: '',
purchaseSid: '',
formobj: {
affiliatedCompany: '',
affiliatedCompanySid: '',
billNo: '',
billingType: '',
billingTypeKey: '',
busDepositFictitiousList: [],
busSalesOrderDeposit: [],
busSalesOrderDiscountList: [],
busSalesOrderInsurance: [],
busSalesOrderMakeup: [],
busSalesOrderModel: [],
busSalesOrderPrice: [],
busSalesOrderVehicleList: [],
busSalesOrderotherMessageDetailsVo: [],
busSalesVehicleOrderList: [],
concatNo: '',
createDate: '',
customerName: '',
customerSid: '',
images: [],
insuranceInfo: '',
insuranceInfoMessage: '',
isInsurance: '',
isTop: '',
licensePlateKey: '',
licensePlateValue: '',
mobile: '',
nodeState: '',
notes: '',
orgName: '',
orgSid: '',
payType: '',
payTypeKey: '',
procInstId: '',
remarks: '',
staffName: '',
staffSid: '',
taskId: '',
type: '',
useOrgName: '',
useOrgSid: '',
purchaseSystemName: '',
purchaseSystemSid: '',
finPlanState: false
},
operation: '', //
dialogList: {
comment: ''
},
startTask: true,
current: {
taskDefKey: '',
taskName: '' //
},
nextNode: {}, //
nodeDialogVisible: false,
purchaseVisible: false, //
currentLink: true,
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: '',
purchaseSystemName: '',
purchaseSystemSid: ''
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
this.current.taskDefKey = obj.taskDefKey
this.current.taskName = obj.taskName
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 450 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
fetchDetailsBySid(sid).then((resp) => {
if (resp.success) {
this.formobj = resp.data
if (this.formobj.busSalesOrderModel.linkNo.length > 0) {
this.formobj.busSalesOrderModel.linkNo = this.formobj.busSalesOrderModel.linkNo.join('、')
} else {
this.formobj.busSalesOrderModel.linkNo = ''
}
if (this.formobj.busSalesOrderModel.vinNo.length > 0) {
this.formobj.busSalesOrderModel.vinNo = this.formobj.busSalesOrderModel.vinNo.join('、')
} else {
this.formobj.busSalesOrderModel.vinNo = ''
}
getOrgSidByPath({ orgPath: this.linkByParameter.orgSidPath }).then((res) => {
if (res.success) {
fetchDetailsByUseOrgSid(res.data).then((response) => {
if (response.success) {
this.purchase_list = response.data
}
})
}
})
}
})
},
handleLook() {
this.viewState = 2
this.$refs['divInfo'].showInfo(this.formobj.solutionsDetailsssVo)
},
//
getSummaries(param) {
const { columns, data } = param
const sums = []
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = ''
return
}
const values = data.map(item => Number(item[column.property]))
if (column.property === 'totalValue') {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr)
if (!isNaN(value)) {
return prev + curr
} else {
return prev
}
}, 0)
sums[index] += ''
} else {
if (!values.every(value => isNaN(value))) {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr)
if (!isNaN(value)) {
return prev + curr
} else {
return prev
}
}, 0)
sums[index] += ''
this.amount = sums[index] += ''
} else {
sums[index] = ''
}
}
})
return sums
},
changePurchase(value) {
const choose = this.purchase_list.filter((item) => item.purchaseSystemName === value)
this.purchaseSid = choose[0].deptSid
},
//
openAgree(val) {
this.operation = val
this.purchaseName = this.formobj.purchaseSystemName
this.purchaseSid = this.formobj.purchaseSystemSid
if (this.formobj.type === '3') {
this.purchaseVisible = true
} else {
this.currentLink = true
this.dialogList.comment = '同意'
getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
}
},
confirm() {
if (this.purchaseName === '') {
this.$message({ showClose: true, type: 'error', message: '采购系统不能为空' })
return
}
this.cancel()
this.currentLink = true
this.dialogList.comment = '同意'
getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
cancel() {
this.purchaseVisible = false
this.purchaseName = ''
this.purchaseSid = ''
},
//
openReject(val) {
this.operation = val
this.currentLink = true
this.dialogList.comment = ''
getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openStop(val) {
this.operation = val
this.currentLink = false
this.dialogList.comment = ''
this.nodeDialogVisible = true
},
reject() {
if (this.operation === '同意') {
this.handleAgree()
} else if (this.operation === '驳回') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleReject()
}
} else if (this.operation === '终止') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleStop()
}
}
},
/** 同意任务 */
handleAgree() {
this.linkByParameter.comment = this.dialogList.comment
this.linkByParameter.purchaseSystemName = this.purchaseName
this.linkByParameter.purchaseSystemSid = this.purchaseSid
completeBy(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 驳回任务 */
handleReject() {
this.linkByParameter.comment = this.dialogList.comment
reject(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 终止任务 */
handleStop() {
this.linkByParameter.comment = this.dialogList.comment
breakProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
resetState() {
this.viewState = 1
}
}
}
</script>
<style scoped>
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.rowClass{
border-top: 1px solid #E0E3EB;
}
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
.jinrong {
padding: 7px;
font-weight: bold;
font-size: 16px;
background-color: #0294d7;
text-align: left;
color: #ffffff;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
margin-bottom: 1px;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content .addinputInfo {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

1182
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanInfo.vue

File diff suppressed because it is too large

325
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/dingdanchaxun/xiaoshoudingdanchaxun.vue

@ -0,0 +1,325 @@
<template>
<div class="app-container">
<!-- Start 列表页面 -->
<div v-show="viewState == 1">
<button-bar view-title="销售订单" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="快捷检索">
<el-input v-model="listQuery.params.name" clearable placeholder=""/>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" @click="handleFilter" icon="el-icon-search" size="small">查询</el-button>
<el-button type="primary" @click="handleReset" icon="el-icon-refresh" size="small">重置</el-button>
</div>
</div>
</div>
<div class="listtop">
<div class="tit">销售订单列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%;" @selection-change="handleSelectionChange">
<el-table-column width="50" type="selection" align="center"/>
<el-table-column fixed label="序号" width="60" type="index" :index="indexMethod" align="center"/>
<el-table-column fixed label="操作" width="100" align="center">
<template slot-scope="scope">
<el-button type="primary" v-show="scope.row.printOrderBtn" size="mini" @click="handlePrint(scope.row)">下载打印</el-button>
</template>
</el-table-column>
<el-table-column label="订单编号" width="100px" align="center">
<template slot-scope="scope">
<span class="bluezi" @click="handleLook(scope.row)">{{ scope.row.saleOrderId }}</span>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.contractId }}</span>
</template>
</el-table-column>
<el-table-column label="客户名称" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.customerName }}</span>
</template>
</el-table-column>
<el-table-column label="手机号" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.mobile }}</span>
</template>
</el-table-column>
<el-table-column label="销售专员" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.saler }}</span>
</template>
</el-table-column>
<el-table-column label="付款方式" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.carPurchaseType }}</span>
</template>
</el-table-column>
<el-table-column label="订单状态" align="center" width="150">
<template slot-scope="scope">
<span @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.saleOrderState }}</span>
</template>
</el-table-column>
<el-table-column label="创建日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.createdDate }}</span>
</template>
</el-table-column>
<el-table-column label="订金合计" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.deposit }}</span>
</template>
</el-table-column>
<el-table-column label="车型" align="center" min-width="180">
<template slot-scope="scope">
<span>{{ scope.row.modelInfo.model }}</span>
</template>
</el-table-column>
<el-table-column label="品牌" align="center" width="180">
<template slot-scope="scope">
<span>{{ scope.row.modelInfo.brand }}</span>
</template>
</el-table-column>
<el-table-column label="成交价" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.modelInfo.price }}</span>
</template>
</el-table-column>
<el-table-column label="数量" align="center" width="80">
<template slot-scope="scope">
<span>{{ scope.row.modelInfo.number }}</span>
</template>
</el-table-column>
</el-table>
</div>
<div class="pages">
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
<!-- End 列表页面 -->
<xiaoshoudingdanInfo ref="divInfo" v-show="viewState == 2" @doback="resetState"/>
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no" :src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
<script>
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/jichuxinxi/dingdanchaxun'
import { getStorage } from '@/utils/auth'
import xiaoshoudingdanInfo from '../../xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdanInfo'
export default {
name: 'XiaoShouDingDanChaXun',
components: {
Pagination,
pageye,
ButtonBar,
xiaoshoudingdanInfo
},
data() {
return {
btndisabled: false,
centerDialogVisible: false,
viewState: 1,
btnList: [
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
// -----------
tableKey: 0,
list: [],
sids: [],
FormLoading: false,
listLoading: false,
listQuery: {
params: {
orgPath: '',
name: ''
},
current: 1,
size: 10,
total: 0
}
}
},
created() {
//
this.init()
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.init()
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doClose':
this.doClose()
break
default:
break
}
},
init() {
this.getList()
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
handleSelectionChange(row) {
const aa = []
row.forEach((element) => {
aa.push(element.saleOrderSid)
})
this.sids = aa
console.log('sids', this.sids)
},
//
getList() {
this.listLoading = true
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
req.listPage(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
this.list = []
this.listQuery.total = 0
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
handleReset() {
this.listQuery = {
params: {
orgPath: '',
name: ''
},
current: 1,
size: 10,
total: 0
}
this.getList()
},
handlePrint(row) {
req.createPdf({ sid: row.saleOrderSid, userName: window.sessionStorage.getItem('name') }).then((resp) => {
if (resp.success && resp.data !== '') {
var xhr = new XMLHttpRequest()
xhr.open('GET', process.env.VUE_APP_BASE_API + '/base/file/download?filePath=' + resp.data + '&outFileName=' + '销售订单', true)
xhr.setRequestHeader('token', getStorage())
xhr.responseType = 'blob'
xhr.onload = function(e) {
//
var blob = this.response
var filename = '销售订单.pdf'
var a = document.createElement('a')
// blob.type="application/octet-stream";
// url
var url = URL.createObjectURL(blob)
a.href = url
a.download = filename
a.click()
// URL
window.URL.revokeObjectURL(url)
}
//
xhr.send()
}
})
},
handleLook(row) {
this.viewState = 2
let aa = null
aa = {
sid: row.saleOrderSid
}
this.$refs['divInfo'].showInfo(aa)
},
resetState() {
this.viewState = 1
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
}
}
}
</script>
<style scoped>
/*表格列设置fixed后固定列出现下边框的设置*/
/deep/ .el-table__fixed {
height: 100% !important;
}
/*表格列设置fixed后固定列出现下边框的设置*/
/deep/ .el-table__fixed-right {
height: 100% !important;
}
</style>

305
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/relation/financialscheme.vue

@ -0,0 +1,305 @@
<template>
<div class="app-container">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="info" size="small" icon="el-icon-close" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="listconadd">
<el-form ref="dataForm" :model="formobj" label-position="top" label-width="130px" class="formaddcopy02">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="6">
<div class="span-sty">是否打包</div>
<el-form-item><span class="addinputInfo">{{ formobj.isPack == '1' ? '是' : formobj.isPack == '0' ? '否' : '' }}</span></el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">产品政策</div>
<el-form-item><span class="addinputInfo">{{ formobj.policyName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">融资项目</div>
<el-form-item>
<div class="addinputInfo">
<span>主车发票价{{ formobj.mainVehicleAmount }}</span>
<span>融资票据{{ formobj.accessoriesAmount }}</span>
<span>挂车{{ formobj.trailerAmount }} </span>
<span>购置税{{ formobj.purchaseTax }} </span>
<span>车损上浮{{ formobj.vehDamageFloat }} </span>
</div>
</el-form-item>
</el-col>
<el-col :span="24">
<div class="span-sty">融资项目总额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanTotal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">首付比例</div>
<el-form-item><span class="addinputInfo">{{ formobj.downPayRatio }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">首付金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.downPayAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">产品贷款金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">产品期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanPeriod }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">贷款保证金比例</div>
<el-form-item><span class="addinputInfo">{{ formobj.bondRatio }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.bondAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">厂家贴息</div>
<el-form-item><span class="addinputInfo">{{ formobj.factoryDiscount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">年利率</div>
<el-form-item><span class="addinputInfo">{{ formobj.policyYearRatio }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">月还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanPayMoney }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">利息总额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanInterest }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">厂家贴息用途</div>
<el-form-item><span class="addinputInfo">{{ formobj.factoryDiscountUse }}</span></el-form-item>
</el-col>
</el-row>
<div v-show="formobj.otherPolicyState">
<div class="title">其它融</div>
<el-row>
<el-col :span="12">
<div class="span-sty">其它融名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyName }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">贷款金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.period }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">月还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyMonthlyRepay }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">利息总额</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyInterest }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">年利率</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherPolicyYearRatio }}</span></el-form-item>
</el-col>
</el-row>
</div>
<div class="title">方案汇总</div>
<el-row>
<el-col :span="12">
<div class="span-sty">融资首付</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanDownPay }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">总贷款金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanAmountTotal }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.period }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">月还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.monthlyRepay }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">利息总额</div>
<el-form-item><span class="addinputInfo">{{ formobj.interest }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">预计首款还款日</div>
<el-form-item><span class="addinputInfo">{{ formobj.returnTime }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">应收明细</div>
<el-row>
<el-col :span="6">
<div class="span-sty">融资首付</div>
<el-form-item><span class="addinputInfo">{{ formobj.downPayAmounts }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.bondAmounts }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">保险保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.depositPremium }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">落户保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.depositSettle }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">服务费</div>
<el-form-item><span class="addinputInfo">{{ formobj.serviceAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">代收意外险</div>
<el-form-item><span class="addinputInfo">{{ formobj.proxyAccidentPremium }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">上牌费</div>
<el-form-item><span class="addinputInfo">{{ formobj.registerAmount }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">运管费</div>
<el-form-item><span class="addinputInfo">{{ formobj.operationAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">补车价</div>
<el-form-item><span class="addinputInfo">{{ formobj.vehOtherPrice }}</span></el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">其它费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherAmount }}</span></el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">其它费用说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.otherAmountRemark }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">办理方式选择</div>
<el-form-item><span class="addinputInfo">{{ formobj.dealWay }}</span></el-form-item>
</el-col>
<el-col :span="9">
<div class="span-sty">代收首年保险费</div>
<el-form-item><span class="addinputInfo">{{ formobj.proxyPremium }}</span></el-form-item>
</el-col>
<el-col :span="9">
<div class="span-sty">代收购置税</div>
<el-form-item><span class="addinputInfo">{{ formobj.proxyPurchasetax }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">应收合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.receivableTotal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">抵顶费用合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.offsetTotal }}</span></el-form-item>
</el-col>
<el-col :span="9">
<div class="span-sty">抵顶首年保险费</div>
<el-form-item><span class="addinputInfo">{{ formobj.offsetPremium }}</span></el-form-item>
</el-col>
<el-col :span="9">
<div class="span-sty">抵顶购置税</div>
<el-form-item><span class="addinputInfo">{{ formobj.offsetPurchasetax }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">实收合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.realTotal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">车辆总价</div>
<el-form-item><span class="addinputInfo">{{ formobj.vehTotalPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">名义(留购)</div>
<el-form-item><span class="addinputInfo">{{ formobj.nominalPrice }}</span></el-form-item>
</el-col>
<el-col :span="18">
<el-form-item><span class="addinputInfo">结清时需缴纳此费用</span></el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</template>
<script>
export default {
name: 'JinRongFangAnInfo',
data() {
return {
viewTitle: '',
tableKey: 0,
index: 0,
formobj: {
otherPolicyState: false
}
}
},
methods: {
showInfo(value) {
this.viewTitle = '金融方案'
this.formobj = value
},
handleReturn() {
this.$emit('doback')
}
}
}
</script>
<style scoped>
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content .addinputInfo {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

2
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdan.vue

@ -316,7 +316,7 @@ export default {
//
toInfo(row) {
this.viewState = 4
this.$refs['dingdanxinxiinfo'].showInfo(row.sid)
this.$refs['dingdanxinxiinfo'].showInfo(row)
},
xiaoshouhetong(row) {
this.$refs['hetongdanganguanli-Info'].showOrderHeTong(row.sid)

1084
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdanInfo.vue

File diff suppressed because it is too large

1
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordMapper.xml

@ -29,6 +29,7 @@
<where>
${ew.sqlSegment}
</where>
order by fp.createTime desc
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.fin.api.finpaymentrecord.FinPaymentrecordVo">

10
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java

@ -27,7 +27,6 @@ package com.yxt.anrui.fin.biz.finpaymentrecord;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufUpdateDto;
@ -40,7 +39,6 @@ import com.yxt.anrui.base.api.basevehicleactualpay.BaseVehicleActualPay;
import com.yxt.anrui.base.api.basevehicleactualpay.BaseVehicleActualPayFeign;
import com.yxt.anrui.base.api.basevehicleactualsales.BaseVehicleActualSalesDetailsVo;
import com.yxt.anrui.base.api.basevehicleactualsales.BaseVehicleActualSalesFeign;
import com.yxt.anrui.base.api.basevehicleoutapply.BaseVehicleOutApplyFeign;
import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApplyDetailsVo;
import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApplyFeign;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo;
@ -50,9 +48,6 @@ import com.yxt.anrui.fin.api.finpaymentrecord.*;
import com.yxt.anrui.fin.api.kingdee.appaybill.ApPayBill;
import com.yxt.anrui.fin.biz.finpaymentapply.FinPaymentapplyService;
import com.yxt.anrui.fin.biz.kingdee.appaybill.ApPayBillService;
import com.yxt.anrui.flowable.api.flowtask.FlowRecordVo;
import com.yxt.anrui.flowable.api.flowtask.FlowTask;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.portal.api.flow.FlowableFeign;
import com.yxt.anrui.portal.api.flow.PCHistTaskListAndCommentList;
import com.yxt.anrui.portal.api.sysorganization.SysOrganization;
@ -73,13 +68,11 @@ import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.messagecenter.api.message.AppScmMessageFlowableQuery;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MsgTargetUriEnum;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
@ -87,7 +80,6 @@ import java.text.NumberFormat;
import java.util.*;
import java.util.stream.Collectors;
import static cn.hutool.core.util.ClassLoaderUtil.getClassLoader;
import static java.util.Comparator.comparing;
/**
@ -170,7 +162,6 @@ public class FinPaymentrecordService extends MybatisBaseService<FinPaymentrecord
}
}
}
qw.orderByDesc("fp.createTime");
IPage<FinPaymentrecord> page = PagerUtil.queryToPage(pq);
IPage<FinPaymentrecordVo> pagging = baseMapper.selectPageVo(page, qw);
List<FinPaymentrecordVo> list = pagging.getRecords();
@ -226,7 +217,6 @@ public class FinPaymentrecordService extends MybatisBaseService<FinPaymentrecord
apply(StringUtils.isNotBlank(pageQuery.getCreateEndDate()), "date_format (fp.createTime,'%Y-%m-%d') <= date_format('" + pageQuery.getCreateEndDate() + "','%Y-%m-%d')"
);
}
qw.orderByDesc("fp.createTime");
IPage<FinPaymentrecord> page = PagerUtil.queryToPage(pq);
IPage<FinPaymentrecordVo> pagging = baseMapper.selectPageVo(page, qw);
List<FinPaymentrecordVo> list = pagging.getRecords();

Loading…
Cancel
Save