This commit is contained in:
huangdeliang
2020-10-28 09:42:15 +08:00
parent d71a32dc6d
commit a51b318a42
7 changed files with 68 additions and 32 deletions

View File

@ -95,13 +95,14 @@ public class SysContractController extends BaseController {
public AjaxResult getfile(@PathVariable long id) {
AjaxResult ajax = AjaxResult.success();
SysContract contract = sysContractService.selectSysContractById(id);
if (contract.getPath() != null) {
if (contract.getPath() != null && !contract.getPath().equals("")) {
ajax.put("url", contract.getPath());
} else {
Map<String, String> data = new HashMap<>();
data.put("id", contract.getId().toString());
data.put("name", contract.getName());
data.put("amount", contract.getAmount().toString());
data.put("serveTime", contract.getServeTime().toString());
data.put("serveTime", contract.getServeTime() + "");
ajax.put("data", data);
}
return ajax;
@ -115,8 +116,9 @@ public class SysContractController extends BaseController {
sysContract.setStatus(1);
String path = "/file/" + sysContract.getId() + ".pdf";
sysContract.setPath(path);
int count = sysContractService.updateSysContract(sysContract);
if (count > 0) {
boolean result = sysContractService.signContract(sysContract);
if (result) {
sysContractService.updateSysContract(sysContract);
AjaxResult ajax = AjaxResult.success();
ajax.put("url", path);
return ajax;

View File

@ -43,7 +43,9 @@ public class SysContract extends BaseEntity {
* 服务时间
*/
@Excel(name = "服务时间")
private Integer serveTime;
private int serveTime;
private String serveTimeStr;
/**
* 金额
@ -59,6 +61,11 @@ public class SysContract extends BaseEntity {
@Excel(name = "文件路径")
private String path;
/**
* 签约日期
*/
private String signDate;
/**
* 合同状态
* 0-未签订1-已签订
@ -89,11 +96,11 @@ public class SysContract extends BaseEntity {
this.phone = phone;
}
public Integer getServeTime() {
public int getServeTime() {
return serveTime;
}
public void setServeTime(Integer serveTime) {
public void setServeTime(int serveTime) {
this.serveTime = serveTime;
}
@ -137,6 +144,23 @@ public class SysContract extends BaseEntity {
this.cusId = cusId;
}
public String getSignDate() {
return signDate;
}
public void setSignDate(String signDate) {
this.signDate = signDate;
}
public String getServeTimeStr() {
return serveTimeStr;
}
public void setServeTimeStr(String serveTimeStr) {
this.serveTimeStr = serveTimeStr;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
@ -147,6 +171,8 @@ public class SysContract extends BaseEntity {
.append("phone", getPhone())
.append("serveTime", getServeTime())
.append("amount", getAmount())
.append("amountUpper", getAmountUpper())
.append("signDate", getSignDate())
.append("path", getPath())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())

View File

@ -59,5 +59,5 @@ public interface ISysContractService
*/
public int deleteSysContractById(Long id);
public int signContract(SysContract sysContract);
public boolean signContract(SysContract sysContract);
}

View File

@ -98,9 +98,12 @@ public class SysContractServiceImpl implements ISysContractService {
}
@Override
public int signContract(SysContract sysContract) {
String templatePath = "/Users/wonder/Documents/Workspaces/java/RuoYi-Vue/running/pdf/contract.pdf";
String filePath = "/Users/wonder/Documents/Workspaces/java/RuoYi-Vue/running" + sysContract.getPath() + ".pdf";
public boolean signContract(SysContract sysContract) {
// String templatePath = "/Users/wonder/Documents/Workspaces/java/RuoYi-Vue/running/pdf/contract.pdf";
// String filePath = "/Users/wonder/Documents/Workspaces/java/RuoYi-Vue/running" + sysContract.getPath();
String templatePath = "/home/workspace/RuoYi-Vue/running/pdf/contract.pdf";
String filePath = "/home/www/web/long.busyinn.com/file" + sysContract.getPath();
PdfReader reader;
FileOutputStream out;
ByteArrayOutputStream bos;
@ -116,11 +119,11 @@ public class SysContractServiceImpl implements ISysContractService {
form.addSubstitutionFont(BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED));
form.setField("name", sysContract.getName(), true);
form.setField("time", sysContract.getServeTime().toString(), true);
form.setField("time", sysContract.getServeTimeStr(), true);
form.setField("moneyUpper", sysContract.getAmountUpper(), true);
form.setField("money", sysContract.getAmount().intValue() + "", true);
form.setField("phone", sysContract.getPhone(), true);
form.setField("date", sysContract.getCreateTime().toString(), true);
form.setField("date", DateUtils.getDate(), true);
form.setField("cusId", sysContract.getCusId(), true);
@ -138,6 +141,8 @@ public class SysContractServiceImpl implements ISysContractService {
copy.addPage(importPage);
}
doc.close();
return true;
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
@ -145,6 +150,6 @@ public class SysContractServiceImpl implements ISysContractService {
} catch (DocumentException e) {
e.printStackTrace();
}
return 0;
return false;
}
}

View File

@ -60,7 +60,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="id != null">#{id},</if>
<if test="status != null">#{status},</if>
<if test="name != null and name != ''">#{name},</if>
<if test="cusId != null and cusId != ''">#{cus_id},</if>
<if test="cusId != null and cusId != ''">#{cusId},</if>
<if test="phone != null">#{phone},</if>
<if test="serveTime != null">#{serveTime},</if>
<if test="amount != null">#{amount},</if>
@ -76,9 +76,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<update id="updateSysContract" parameterType="SysContract">
update sys_contract
<trim prefix="SET" suffixOverrides=",">
<if test="status != null">name = #{status},</if>
<if test="status != null">status = #{status},</if>
<if test="name != null and name != ''">name = #{name},</if>
<if test="cusId != null and cusId != ''">name = #{cus_id},</if>
<if test="cusId != null and cusId != ''">cus_id = #{cusId},</if>
<if test="phone != null">phone = #{phone},</if>
<if test="serveTime != null">serve_time = #{serveTime},</if>
<if test="amount != null">amount = #{amount},</if>

View File

@ -61,8 +61,8 @@ export function getFile(id) {
export function signContract(data) {
return request({
url: '/custom/contract/',
method: 'put',
url: '/custom/contract/sign',
method: 'post',
data: data
})
}

View File

@ -9,10 +9,10 @@
<span>{{form.amount}}</span>
</el-form-item>
<el-form-item label="服务时长" style="margin: 0">
<span>{{form.serveTime}}</span>
<span>{{form.serveTimeStr}}</span>
</el-form-item>
<el-form-item label="姓名" prop="userName">
<el-input v-model="form.userName" placeholder="请输入客户姓名"/>
<el-form-item label="姓名" prop="cusName">
<el-input v-model="form.cusName" placeholder="请输入客户姓名"/>
</el-form-item>
<el-form-item label="证件号" prop="cusId">
<el-input v-model="form.cusId" placeholder="请输入证件号"/>
@ -50,8 +50,8 @@
</p>
<p>第二条 合作内容及费用
<div class="line-rule">11经甲乙双方协商确定乙方向甲方购买<b>{{form.serveTime}}</b>胜唐体控瘦身指导服务以下简称服务</div>
<div class="line-rule">12乙方向甲方购买<b>{{form.serveTime}}</b>经甲乙双方协商确定乙方向甲方支付疗程费用共为人民币<b>{{form.amount}}</b>大写<b>{{form.amountUppercase}}</b>
<div class="line-rule">11经甲乙双方协商确定乙方向甲方购买<b>{{form.serveTimeStr}}</b>胜唐体控瘦身指导服务以下简称服务</div>
<div class="line-rule">12乙方向甲方购买<b>{{form.serveTimeStr}}</b>经甲乙双方协商确定乙方向甲方支付疗程费用共为人民币<b>{{form.amount}}</b>大写<b>{{form.amountUppercase}}</b>
</div>
</p>
@ -82,17 +82,17 @@
<script>
import {getFile, signContract} from "@/api/custom/contract";
import {digitUppercase} from "../../../utils/ruoyi";
import {digitUppercase, parseTime} from "../../../utils/ruoyi";
export default {
name: 'sign',
data() {
const checkUserName = (rule, value, callback) => {
const checkCusName = (rule, value, callback) => {
if (!value) {
return callback(new Error('姓名不能为空'))
}
if(value !== this.form.name){
if (value !== this.form.name) {
return callback(new Error('输入姓名不匹配,请联系客服核对'))
}
callback();
@ -159,8 +159,8 @@
{label: '12个月', value: 360},
],
rules: {
userName: [
{required: true, trigger: "blur", validator: checkUserName}
cusName: [
{required: true, trigger: "blur", validator: checkCusName}
],
phone: [
{required: true, trigger: "blur", validator: checkPhone}
@ -188,8 +188,8 @@
} else if (result.data) {
this.form = result.data;
this.form.amount = parseInt(result.data.amount);
this.form.amountUppercase = digitUppercase(this.form.amount);
this.form.serveTime = this.serveTimeIdOption.find(obj => obj.value === parseInt(result.data.serveTime)).label
this.form.amountUpper = digitUppercase(this.form.amount);
this.form.serveTimeStr = this.serveTimeIdOption.find(obj => obj.value === parseInt(result.data.serveTime)).label
this.show = true;
}
})
@ -197,9 +197,12 @@
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.form.signDate = parseTime(new Date(), '{y}-{m}-{d}');
console.log(this.form)
signContract(this.form).then(result => {
if (result.code === 200) {
// this.$router.push(result.url);
this.$router.push(result.url);
// console.log(result);
}
});
}