Commit cb39f843 by 宋毅

tj

parent 5067fa86
......@@ -183,6 +183,7 @@ module.exports = (db, DataTypes) => {
allowNull: false,
values: Object.keys(uiconfig.config.pdict.productCata),
defaultValue: "ip",
orderAppendinfo:DataTypes.STRING(4000),//订单附加信息
},
}, base), {
......
......@@ -620,6 +620,10 @@ class OrderService extends ServiceBase {
else if (verifyType == 2) {
productCount = buyProductCount;
gfze = gf * Number(productCount);
if (Number(tm.totalSum) < Number(serviceitem.price)) {
return { code: -210, msg: "订单金额有误" };
}
return "";
}
var fwfze = Number(fwf) * Number(productCount);//服务费总额
var sfze = Number(tm.totalSum) / (sveItemRateConfig + 100) * sveItemRateConfig; //totalTaxes 税费总额
......@@ -687,12 +691,13 @@ class OrderService extends ServiceBase {
var orderSource = obj.orderSource || "gsay";
var tm_company_type = obj.tm_company_type || "";
var sourceOrderNo = obj.sourceOrderNo || "";
var orderAppendinfo = obj.order_appendinfo || "";//订单附加信息
if (!itemCode) {
return { code: -101, mag: 'itemCode参数错误' };
return { code: -101, msg: 'itemCode参数错误' };
}
var serviceitem = await this.serviceitemSve.findOneByCode(itemCode, user.company_id);//获取产品
if (!serviceitem) {
return { code: -102, mag: '未知的产品' };
return { code: -102, msg: '未知的产品' };
}
var verifyResult = await self.isOrderVerify(user, 2, tm, serviceitem, null, 1);
if (verifyResult) {
......@@ -705,7 +710,7 @@ class OrderService extends ServiceBase {
raw: true
});
if (!companyItem) {
return { code: -103, mag: '未知的公司信息' };
return { code: -103, msg: '未知的公司信息' };
}
return this.db.transaction(async function (t) {
var ordercode = await self.getBusUid("pro");
......@@ -713,7 +718,7 @@ class OrderService extends ServiceBase {
orderSource: orderSource,
company_id: user.company_id,
createuser_id: user.id,
name: tm.name,//商标名称
name: tm.name || "",//商标名称
code: ordercode,
busPayOrderCode: ordercode,//业务支付订单号
wxPayOrderCode: ordercode,//业务微信支付订单号
......@@ -724,14 +729,14 @@ class OrderService extends ServiceBase {
orderPayStatus: "dfk",//订单付款状态"dfk": "待付款", "yfk": "已付款", "ddqx": "订单取消", "tkclz": "退款处理中", "ytk": "已退款"
orderFlowStatus: "1",//订单审核状态"1": "提交订单", "2": "已付款", "3": "已审核-待递交", "4": "已递交", "5": "已完成"
orderStatus: "1",//订单状态"1": "提交订单", "2": "待上传材料", "3": "待审核", "4": "审核不通过", "5": "待递交" , "6": "部分递交异常", "7": "已完成"
totalServiceCharge: tm.totalServiceCharge,//服务费总额
totalPublicExpense: tm.totalPublicExpense,//官费总额
totalDiscounts: tm.totalDiscounts,//优惠总额
totalTaxes: tm.totalTaxes,//税费总额(订单总额*产品费率%)
totalSum: tm.totalSum,//订单总额(服务费+官费+(税费总额-优惠总额))
totalProfitSum: tm.totalProfitSum,//订单利润总额(订单总额-官费总额-(税费总额-优惠总额))
pfProfitSum: tm.pfProfitSum,//订单平台毛利润总额
channelProfitSum: tm.channelProfitSum,//订单渠道分成毛利润总额
totalServiceCharge: tm.totalServiceCharge || 0,//服务费总额
totalPublicExpense: tm.totalPublicExpense || 0,//官费总额
totalDiscounts: tm.totalDiscounts || 0,//优惠总额
totalTaxes: tm.totalTaxes || 0,//税费总额(订单总额*产品费率%)
totalSum: tm.totalSum || 0,//订单总额(服务费+官费+(税费总额-优惠总额))
totalProfitSum: tm.totalProfitSum || 0,//订单利润总额(订单总额-官费总额-(税费总额-优惠总额))
pfProfitSum: tm.pfProfitSum || 0,//订单平台毛利润总额
channelProfitSum: tm.channelProfitSum || 0,//订单渠道分成毛利润总额
nclOneCodesNum: 0,//大类件数
sveItemType: serviceitem.itemType,//服务项目类型
sveItemRateConfig: serviceitem.rateConfig || 0,//产品费率
......@@ -742,13 +747,14 @@ class OrderService extends ServiceBase {
productonetype_id: serviceitem.producttype_pid_id,//产品大类Id
producttype_id: serviceitem.producttype_id,//产品小类Id
serviceItemSnapshot: JSON.stringify(serviceitem),//产品快照
contacts: apply.contacts,//联系人
mobile: apply.mobile,//手机号
email: apply.email,//邮箱
orderAppendinfo: orderAppendinfo ? JSON.stringify(orderAppendinfo) : "",//订单附加信息
contacts: apply.contacts || "",//联系人
mobile: apply.mobile || "",//手机号
email: apply.email || "",//邮箱
// tel: apply.tel,//座机
// fax: apply.fax,//传真
// zipCode: apply.zipCode,//邮政编码
notes: apply.notes, //备注
notes: apply.notes || "", //备注
sourceOrderNo: sourceOrderNo,//订单的来源单号
subType: companyItem.companyType == "self" ? "self" : "platform",
};
......@@ -2144,17 +2150,17 @@ class OrderService extends ServiceBase {
applyAddr: apply.applyAddr,//申请地址
businessLicensePic: apply.businessLicensePic, //营业执照图片
owner_id: user.id,
credentialsType:apply.credentialsType,
customerName:apply.customerName,
customerType:apply.customerType,
legalRepresentativeCertificateNo:apply.legalRepresentativeCertificateNo,
legalRepresentativeCertificatePic:apply.legalRepresentativeCertificatePic,
valueAddedTelecomBusinessApplicationForm:apply.valueAddedTelecomBusinessApplicationForm,
naturalPersonShareholderIdCard:apply.naturalPersonShareholderIdCard,
trusteeshipAgreementAndIDC:apply.trusteeshipAgreementAndIDC,
domainNameCertificate:apply.domainNameCertificate,
paymentAgreementAndLicense:apply.paymentAgreementAndLicense,
capitalFlowDesAndMerchantPresenceTemp:apply.capitalFlowDesAndMerchantPresenceTemp
credentialsType: apply.credentialsType,
customerName: apply.customerName,
customerType: apply.customerType,
legalRepresentativeCertificateNo: apply.legalRepresentativeCertificateNo,
legalRepresentativeCertificatePic: apply.legalRepresentativeCertificatePic,
valueAddedTelecomBusinessApplicationForm: apply.valueAddedTelecomBusinessApplicationForm,
naturalPersonShareholderIdCard: apply.naturalPersonShareholderIdCard,
trusteeshipAgreementAndIDC: apply.trusteeshipAgreementAndIDC,
domainNameCertificate: apply.domainNameCertificate,
paymentAgreementAndLicense: apply.paymentAgreementAndLicense,
capitalFlowDesAndMerchantPresenceTemp: apply.capitalFlowDesAndMerchantPresenceTemp
};
//订单付款状态"dfk": "待付款", "yfk": "已付款", "ddqx": "订单取消", "tkclz": "退款处理中", "ytk": "已退款"
//订单状态"1": "提交订单", "2": "待上传材料", "3": "待审核", "4": "审核不通过", "5": "待递交" , "6": "部分递交异常", "7": "已完成"
......@@ -2170,36 +2176,36 @@ class OrderService extends ServiceBase {
}
return customer;
}
async tcpOrderCostCalculation(user,company,serviceitem,apply,buyProductCount,price) { //tcp订单费用计算
var calObj={};
async tcpOrderCostCalculation(user, company, serviceitem, apply, buyProductCount, price) { //tcp订单费用计算
var calObj = {};
var cpjg = serviceitem.price ? Number(serviceitem.price) : 0;//产品价格
var cpfl = serviceitem.rateConfig ? Number(serviceitem.rateConfig) : 0;//产品费率
calObj["sveItemRateConfig"]=cpfl;
calObj["sveItemRateConfig"] = cpfl;
var fwf = serviceitem.serviceCharge ? Number(serviceitem.serviceCharge) : 0;//服务费
var yhfl = serviceitem.discountsRateConfig ? Number(serviceitem.discountsRateConfig) : 0;//最大优惠费率
calObj["sveDiscountsRateConfig"]=yhfl;
calObj["sveDiscountsRateConfig"] = yhfl;
var gf = serviceitem.publicExpense ? Number(serviceitem.publicExpense) : 0;//产品官费
var productCount = 1;//产品数量
productCount = buyProductCount;
if(price){
if (price) {
price = Number(price);
}else{
return {code:-401,msg:"订单价格参数错误"};
} else {
return { code: -401, msg: "订单价格参数错误" };
}
calObj["totalSum"]=price;
calObj["totalSum"] = price;
var gfze = 0;//官费总额
gfze = gf * Number(productCount);
calObj["totalPublicExpense"]=gfze;
calObj["totalPublicExpense"] = gfze;
var fwfze = Number(fwf) * Number(productCount);//服务费总额
calObj["totalServiceCharge"]=fwfze;
calObj["totalServiceCharge"] = fwfze;
var sfze = Number(price) / (cpfl + 100) * cpfl; //totalTaxes 税费总额
sfze = sfze.toFixed(2);
sfze = Number(sfze);
calObj["totalTaxes"]=sfze;
calObj["totalTaxes"] = sfze;
var zdyhe = (gfze + fwfze) * yhfl / 100;//最大优惠额
zdyhe = zdyhe.toFixed(2);
......@@ -2209,7 +2215,7 @@ class OrderService extends ServiceBase {
var mlze = Number(price) - gfze;//totalProfitSum 毛利总额
mlze = mlze.toFixed(2);
mlze = Number(mlze);
calObj["totalProfitSum"]=mlze;
calObj["totalProfitSum"] = mlze;
//优惠金额=服务费+官费总额-应付总额(服务费、官费之和小于等于应付总额时,优惠金额为零)
var yhje = fwfze + gfze - Number(price);
......@@ -2221,7 +2227,7 @@ class OrderService extends ServiceBase {
if (yhje > zdyhe) {
return { code: -405, msg: "订单价格有误" };
}
calObj["totalDiscounts"]=yhje;
calObj["totalDiscounts"] = yhje;
// user.company.companyType---公司类型
var channelProfitSum = 0;//订单渠道分成毛利润总额
......@@ -2246,7 +2252,7 @@ class OrderService extends ServiceBase {
calObj["pfProfitSum"] = pfProfitSum;
}
}//渠道利润分成比率(只分订单中毛利润总额的分成)
return {code:1,data:calObj};
return { code: 1, data: calObj };
}
async createIcpOrder(obj) { //创建icp订单
var itemCode = obj.itemCode;//产品编码
......@@ -2270,11 +2276,11 @@ class OrderService extends ServiceBase {
if (!companyItem) {
return { code: -103, mag: '未知的公司信息' };
}
var calObj = await this.tcpOrderCostCalculation(user,companyItem,serviceitem,apply,1,obj.price);
if(!calObj || !calObj.code){
var calObj = await this.tcpOrderCostCalculation(user, companyItem, serviceitem, apply, 1, obj.price);
if (!calObj || !calObj.code) {
return { code: -104, mag: '订单价格计算失败' };
}
if(calObj.code<0){
if (calObj.code < 0) {
return calObj;
}
calObj = calObj.data;
......@@ -2335,7 +2341,7 @@ class OrderService extends ServiceBase {
})
}
async updateIcpOrder(obj){//修改icp订单
async updateIcpOrder(obj) {//修改icp订单
var itemCode = obj.itemCode;//产品编码
var orderNum = obj.orderNum;//订单编号
var user = obj.user;
......@@ -2372,11 +2378,11 @@ class OrderService extends ServiceBase {
if (!companyItem) {
return { code: -107, mag: '未知的公司信息' };
}
var calObj = await this.tcpOrderCostCalculation(user,companyItem,serviceitem,apply,1,obj.price);
if(!calObj || !calObj.code){
var calObj = await this.tcpOrderCostCalculation(user, companyItem, serviceitem, apply, 1, obj.price);
if (!calObj || !calObj.code) {
return { code: -108, mag: '订单价格计算失败' };
}
if(calObj.code<0){
if (calObj.code < 0) {
return calObj;
}
calObj = calObj.data;
......@@ -2400,7 +2406,7 @@ class OrderService extends ServiceBase {
}
return this.db.transaction(async function (t) {
var orderObj = {
id:orderitem.id,
id: orderitem.id,
updateuser_id: user.id,
totalServiceCharge: calObj.totalServiceCharge,//服务费总额
totalPublicExpense: calObj.totalPublicExpense,//官费总额
......@@ -2431,7 +2437,7 @@ class OrderService extends ServiceBase {
return { code: 1, msg: "success", data: orderitem };
});
}
async saveIcpOrder(obj,user){//修改保存icp订单 //icp订单详情页保存修改功能使用
async saveIcpOrder(obj, user) {//修改保存icp订单 //icp订单详情页保存修改功能使用
var orderNum = obj.orderNum;//订单编号
var self = this;
if (!orderNum) {
......@@ -2441,12 +2447,12 @@ class OrderService extends ServiceBase {
if (!orderitem) {
return { code: -103, mag: '未知的订单' };
}
if(!orderitem.icpcustomerinfo_id){
if (!orderitem.icpcustomerinfo_id) {
return { code: -104, mag: '未知申请信息' };
}
return this.db.transaction(async function (t) {
if(obj.orderStatus){
await self.dao.model.update({orderStatus:obj.orderStatus}, { where: { id: orderitem.id }, transaction: t });
if (obj.orderStatus) {
await self.dao.model.update({ orderStatus: obj.orderStatus }, { where: { id: orderitem.id }, transaction: t });
}
await self.icpcustomerinfoSve.dao.model.update(obj, { where: { id: orderitem.icpcustomerinfo_id }, transaction: t });
var flowObj = {
......@@ -2456,12 +2462,12 @@ class OrderService extends ServiceBase {
opContent: "修改订单信息"
};
var orderflow = await self.orderflowSve.dao.create(flowObj, t);//创建订单流程
return { code: 1, msg: "success"};
return { code: 1, msg: "success" };
});
}
async getIcpOrderDetail(orderNum){//获取icp订单详情
if(!orderNum){
return {code:-101,msg:"orderNum参数错误"};
async getIcpOrderDetail(orderNum) {//获取icp订单详情
if (!orderNum) {
return { code: -101, msg: "orderNum参数错误" };
}
var order = await this.dao.findOne({ code: orderNum });
var data = {};
......
......@@ -162,6 +162,8 @@
name: "/orderpay",
params: { orderNum: d.data.code }
});
} else {
console.log(d.msg, "-------createOtherOrder---error----------");
}
})
} else {
......
......@@ -74,8 +74,8 @@
</el-row>
</div>
<div v-else>
<!--
<el-row style="margin-top:45px;line-height: 14px;">
<!-- <div style="width:2px;height:20px;background-color:#000;float:left"></div> -->
<img style="vertical-align: middle;float: left;" src="imgs/icon_kehu.png" alt="">
<div style="float:left;margin-left:10px;font-size: 14px;font-weight:400;">向客户收款</div>
</el-row>
......@@ -90,11 +90,12 @@
</el-button>
<span style="color: #B2B2B2;font-size: 12px;margin-left:5px;">复制订单链接发给客户人确认支付 (微信打开该链接)</span>
</el-col>
</el-row>
</el-row>-->
<el-row style="margin-top:30px;line-height: 14px;">
<img style="vertical-align: middle;float: left;" src="imgs/icon_dailiren.png" alt="">
<div style="float:left;margin-left:10px;font-size: 14px;font-weight:400;">代理人代付</div>
<!--<div style="float:left;margin-left:10px;font-size: 14px;font-weight:400;">代理人代付</div>-->
<div style="float:left;margin-left:10px;font-size: 14px;font-weight:400;">付款方式</div>
</el-row>
<div style="clear:both"></div>
<el-row v-if="orderInfo.orderPayStatus==\'dfk\'" :gitter="20"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment