Commit 2bbaa385 by dengshichuan

Merge branch 'dsc' into 'develop'

企业中心商品实体类,部分查询接口

See merge request 8timerv2/8timerapiv200!45
parents 55ad6148 ce339f4e
...@@ -52,7 +52,13 @@ public class QyzxBuyRecord extends Model<QyzxBuyRecord>{ ...@@ -52,7 +52,13 @@ public class QyzxBuyRecord extends Model<QyzxBuyRecord>{
private Integer id; private Integer id;
@ApiModelProperty(value="付费模块id",example="1") @ApiModelProperty(value="付费模块id",example="1")
private Integer mid; private Integer pmid;
@ApiModelProperty(value="付费商品id",example="1")
private Integer pcid;
@ApiModelProperty(value="订单号",example="1")
private String orderNo;
@ApiModelProperty(value="付费内容描述",example="短信") @ApiModelProperty(value="付费内容描述",example="短信")
private String content; private String content;
...@@ -60,7 +66,13 @@ public class QyzxBuyRecord extends Model<QyzxBuyRecord>{ ...@@ -60,7 +66,13 @@ public class QyzxBuyRecord extends Model<QyzxBuyRecord>{
@ApiModelProperty(value="购买单价",example="888") @ApiModelProperty(value="购买单价",example="888")
private Double price; private Double price;
@ApiModelProperty(value="数量",example="500") @ApiModelProperty(value="购买总价",example="888")
private Double totalPrice;
@ApiModelProperty(value="规格",example="500")
private Integer specification;
@ApiModelProperty(value="购入份数",example="2")
private Integer count; private Integer count;
@ApiModelProperty(value="单位",example="条") @ApiModelProperty(value="单位",example="条")
...@@ -69,6 +81,12 @@ public class QyzxBuyRecord extends Model<QyzxBuyRecord>{ ...@@ -69,6 +81,12 @@ public class QyzxBuyRecord extends Model<QyzxBuyRecord>{
@ApiModelProperty(value="到期时间",example="365天") @ApiModelProperty(value="到期时间",example="365天")
private Date expireDate; private Date expireDate;
@ApiModelProperty(value="支付方式",example="0-无 1-微信 2-支付宝")
private Integer payment;
@ApiModelProperty(value="开票状态",example="0-待开票 1-开票中 2-已开票 3-开票失败")
private Integer invoiceStatus;
@ApiModelProperty(value="企业",example="117") @ApiModelProperty(value="企业",example="117")
private Integer orgCode; private Integer orgCode;
...@@ -88,7 +106,7 @@ public class QyzxBuyRecord extends Model<QyzxBuyRecord>{ ...@@ -88,7 +106,7 @@ public class QyzxBuyRecord extends Model<QyzxBuyRecord>{
@ApiModelProperty(value="创建人 ",example="") @ApiModelProperty(value="创建人 ",example="")
private Integer createUser; private Integer createUser;
@TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE)
@ApiModelProperty(value="修改时间 ",example="") @ApiModelProperty(value="修改时间 ",example="")
private Date modifyTime; private Date modifyTime;
......
...@@ -29,7 +29,7 @@ import lombok.NoArgsConstructor; ...@@ -29,7 +29,7 @@ import lombok.NoArgsConstructor;
/** /**
* <p>Title: QyzxInvoiceData.java</p> * <p>Title: QyzxInvoiceData.java</p>
* <p>Description: </p> * <p>Description: 发票资料实体类</p>
* @author dsc * @author dsc
* @date 2020年4月21日 * @date 2020年4月21日
* @version 1.0 * @version 1.0
...@@ -52,8 +52,8 @@ public class QyzxInvoiceData extends Model<QyzxInvoiceData>{ ...@@ -52,8 +52,8 @@ public class QyzxInvoiceData extends Model<QyzxInvoiceData>{
@ApiModelProperty(value="主键",example="1") @ApiModelProperty(value="主键",example="1")
private Integer id; private Integer id;
@ApiModelProperty(value="购买记录id",example="1") @ApiModelProperty(value="订单号",example="1")
private Integer pcid; private String orderNo;
@ApiModelProperty(value="发票抬头",example="广东优领") @ApiModelProperty(value="发票抬头",example="广东优领")
...@@ -105,7 +105,7 @@ public class QyzxInvoiceData extends Model<QyzxInvoiceData>{ ...@@ -105,7 +105,7 @@ public class QyzxInvoiceData extends Model<QyzxInvoiceData>{
@ApiModelProperty(value="创建人 ",example="") @ApiModelProperty(value="创建人 ",example="")
private Integer createUser; private Integer createUser;
@TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE)
@ApiModelProperty(value="修改时间 ",example="") @ApiModelProperty(value="修改时间 ",example="")
private Date modifyTime; private Date modifyTime;
......
/**
* <p>Title: QyzxOrderRecord.java</p>
* <p>Description: </p>
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
package cn.timer.api.bean.qyzx.businessService;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* <p>Title: QyzxOrderRecord.java</p>
* <p>Description: 订单记录表实体类</p>
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
@Entity
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Table(name="qyzx_order_record")
@ApiModel("订单记录表")
public class QyzxOrderRecord extends Model<QyzxOrderRecord>{
private static final long serialVersionUID = -7510680773649130425L;
@Id
@GeneratedValue
@TableId (type = IdType.AUTO)
@ApiModelProperty(value="主键",example="1")
private Integer id;
@ApiModelProperty(value="付费模块id",example="1")
private Integer pmid;
@ApiModelProperty(value="付费内容id",example="1")
private Integer pcid;
@ApiModelProperty(value="购买数量",example="1")
private Integer count;
@ApiModelProperty(value="订单号",example="123456")
private String orderNo;
@ApiModelProperty(value="订单状态",example="0-无 1-支付成功")
private Integer orderStatus;
@ApiModelProperty(value="商品详情",example="json对象")
private String orderDetail;
@ApiModelProperty(value="支付方式",example="0-无 1-微信 2-支付宝")
private Integer payment;
@ApiModelProperty(value="公司",example="117")
private Integer orgCode;
@ApiModelProperty(value="排序",example="")
private Integer sort;
@ApiModelProperty(value="模块状态",example="默认0-开启,1-关闭")
private Integer status;
@ApiModelProperty(value="是否删除",example="默认0-未删除,1-删除")
private Integer isDelete;
@TableField(fill = FieldFill.INSERT)
@ApiModelProperty(value="创建时间 ",example="")
private Date createTime;
@ApiModelProperty(value="创建人 ",example="")
private Integer createUser;
@TableField(fill = FieldFill.INSERT_UPDATE)
@ApiModelProperty(value="修改时间 ",example="")
private Date modifyTime;
@ApiModelProperty(value="修改人 ",example="")
private Integer modifyUser;
}
...@@ -53,13 +53,16 @@ public class QyzxPayContent extends Model<QyzxPayContent>{ ...@@ -53,13 +53,16 @@ public class QyzxPayContent extends Model<QyzxPayContent>{
private Integer id; private Integer id;
@ApiModelProperty(value="付费模块id",example="1") @ApiModelProperty(value="付费模块id",example="1")
private Integer mid; private Integer pmid;
@ApiModelProperty(value="付费内容描述",example="短信") @ApiModelProperty(value="付费内容描述",example="短信")
private String content; private String content;
@ApiModelProperty(value="数量",example="500") @ApiModelProperty(value="规格",example="500")
private Integer count; private Integer specification;
// @ApiModelProperty(value="数量",example="2")
// private Integer count;
@ApiModelProperty(value="单位",example="条") @ApiModelProperty(value="单位",example="条")
private String unit; private String unit;
...@@ -70,6 +73,9 @@ public class QyzxPayContent extends Model<QyzxPayContent>{ ...@@ -70,6 +73,9 @@ public class QyzxPayContent extends Model<QyzxPayContent>{
@ApiModelProperty(value="现在价格",example="888") @ApiModelProperty(value="现在价格",example="888")
private Double nowPrice; private Double nowPrice;
@ApiModelProperty(value="有效期",example="365")
private Long expiration;
@ApiModelProperty(value="排序",example="") @ApiModelProperty(value="排序",example="")
private Integer sort; private Integer sort;
...@@ -86,7 +92,7 @@ public class QyzxPayContent extends Model<QyzxPayContent>{ ...@@ -86,7 +92,7 @@ public class QyzxPayContent extends Model<QyzxPayContent>{
@ApiModelProperty(value="创建人 ",example="") @ApiModelProperty(value="创建人 ",example="")
private Integer createUser; private Integer createUser;
@TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE)
@ApiModelProperty(value="修改时间 ",example="") @ApiModelProperty(value="修改时间 ",example="")
private Date modifyTime; private Date modifyTime;
......
...@@ -63,7 +63,7 @@ public class QyzxPayModule extends Model<QyzxPayModule>{ ...@@ -63,7 +63,7 @@ public class QyzxPayModule extends Model<QyzxPayModule>{
@ApiModelProperty(value="创建人 ",example="") @ApiModelProperty(value="创建人 ",example="")
private Integer createUser; private Integer createUser;
@TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE)
@ApiModelProperty(value="修改时间 ",example="") @ApiModelProperty(value="修改时间 ",example="")
private Date modifyTime; private Date modifyTime;
......
...@@ -52,17 +52,38 @@ public class QyzxRemainingQuantity extends Model<QyzxRemainingQuantity>{ ...@@ -52,17 +52,38 @@ public class QyzxRemainingQuantity extends Model<QyzxRemainingQuantity>{
@ApiModelProperty(value="主键",example="1") @ApiModelProperty(value="主键",example="1")
private Integer id; private Integer id;
@ApiModelProperty(value="付费模块id",example="1")
private Integer pmid;
@ApiModelProperty(value="付费内容id",example="1") @ApiModelProperty(value="付费内容id",example="1")
private Integer pcid; private Integer pcid;
@ApiModelProperty(value="订单号",example="1")
private String orderNo;
@ApiModelProperty(value="付费内容",example="短信")
private String content;
@ApiModelProperty(value="到期时间",example="365天") @ApiModelProperty(value="到期时间",example="365天")
private Date expireDate; private Date expireDate;
@ApiModelProperty(value="数量",example="500") @ApiModelProperty(value="规格",example="500")
private Integer specification;
@ApiModelProperty(value="套餐总量=规格*数量",example="1000")
private Integer totalNum;
@ApiModelProperty(value="套餐剩余数量",example="499")
private Integer remainder;
@ApiModelProperty(value="数量",example="2")
private Integer count; private Integer count;
@ApiModelProperty(value="单位",example="条") @ApiModelProperty(value="单位",example="条")
private Integer unit; private String unit;
@ApiModelProperty(value="企业",example="117")
private Integer orgCode;
@ApiModelProperty(value="排序",example="") @ApiModelProperty(value="排序",example="")
private String sort; private String sort;
...@@ -80,7 +101,7 @@ public class QyzxRemainingQuantity extends Model<QyzxRemainingQuantity>{ ...@@ -80,7 +101,7 @@ public class QyzxRemainingQuantity extends Model<QyzxRemainingQuantity>{
@ApiModelProperty(value="创建人 ",example="") @ApiModelProperty(value="创建人 ",example="")
private Integer createUser; private Integer createUser;
@TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE)
@ApiModelProperty(value="修改时间 ",example="") @ApiModelProperty(value="修改时间 ",example="")
private Date modifyTime; private Date modifyTime;
......
...@@ -29,7 +29,7 @@ import lombok.NoArgsConstructor; ...@@ -29,7 +29,7 @@ import lombok.NoArgsConstructor;
/** /**
* <p>Title: QyzxUseRecord.java</p> * <p>Title: QyzxUseRecord.java</p>
* <p>Description: 使用记录表</p> * <p>Description: 使用记录表实体类</p>
* @author dsc * @author dsc
* @date 2020年4月21日 * @date 2020年4月21日
* @version 1.0 * @version 1.0
...@@ -55,14 +55,17 @@ public class QyzxUseRecord extends Model<QyzxUseRecord>{ ...@@ -55,14 +55,17 @@ public class QyzxUseRecord extends Model<QyzxUseRecord>{
@ApiModelProperty(value="模块id",example="1") @ApiModelProperty(value="模块id",example="1")
private Integer pmid; private Integer pmid;
@ApiModelProperty(value="订单号",example="1")
private String orderNo;
@ApiModelProperty(value="使用场景",example="1") @ApiModelProperty(value="使用场景",example="1")
private Integer scene; private Integer scene;
@ApiModelProperty(value="原始量",example="500") @ApiModelProperty(value="原始量",example="500")
private Integer originalCount; private Integer originalTotalNum;
@ApiModelProperty(value="现在数量",example="499") @ApiModelProperty(value="当前总量",example="499")
private Integer nowCount; private Integer nowTotalNum;
@ApiModelProperty(value="模块状态",example="默认0-开启,1-关闭") @ApiModelProperty(value="模块状态",example="默认0-开启,1-关闭")
private Integer status; private Integer status;
...@@ -80,7 +83,7 @@ public class QyzxUseRecord extends Model<QyzxUseRecord>{ ...@@ -80,7 +83,7 @@ public class QyzxUseRecord extends Model<QyzxUseRecord>{
@ApiModelProperty(value="创建人 ",example="") @ApiModelProperty(value="创建人 ",example="")
private Integer createUser; private Integer createUser;
@TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE)
@ApiModelProperty(value="修改时间 ",example="") @ApiModelProperty(value="修改时间 ",example="")
private Date modifyTime; private Date modifyTime;
......
/**
* <p>Title: AlipayCallbackController.java</p>
* <p>Description: </p>
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
package cn.timer.api.callback.alipay;
import javax.transaction.Transactional;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import cn.timer.api.utils.Result;
import cn.timer.api.utils.ResultUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* <p>Title: AlipayCallbackController.java</p>
* <p>Description: 支付宝回调接口</p>
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
@RestController
@Transactional
@Api(tags = "99.99 支付宝回调接口")
@RequestMapping(value = "/callback/alipay", produces = { "application/json" })
public class AlipayCallBackController {
@PostMapping(value = "/pro")
@ApiOperation(value = "购买服务", httpMethod = "POST", notes = "接口发布说明")
public Result<Object> alipaycallback_pro(@RequestBody String orderId) { // 入参修改 TODO
// 验证微信回调信息 TODO
// 交易成功
// 修改订单表
// 修改套餐余量表
// 修改购买记录表
return ResultUtil.data(orderId, "购买成功");
}
@PostMapping(value = "/test")
@ApiOperation(value = "购买服务(test)", httpMethod = "POST", notes = "接口发布说明")
public Result<Object> alipaycallback_test(@RequestBody String orderId) { // 入参修改 TODO
// 验证微信回调信息 TODO
// 交易成功
// 修改订单表
// 修改套餐余量表
// 修改购买记录表
return ResultUtil.data(orderId, "购买成功");
}
}
/**
* <p>Title: WxCallBackController.java</p>
* <p>Description: </p>
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
package cn.timer.api.callback.wx;
import java.util.Date;
import javax.transaction.Transactional;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateUtil;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import cn.timer.api.bean.qyzx.businessService.QyzxBuyRecord;
import cn.timer.api.bean.qyzx.businessService.QyzxOrderRecord;
import cn.timer.api.bean.qyzx.businessService.QyzxRemainingQuantity;
import cn.timer.api.utils.Result;
import cn.timer.api.utils.ResultUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* <p>
* Title: WxCallBackController.java
* </p>
* <p>
* Description: 微信回调接口类
* </p>
*
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
@RestController
@Transactional
@Api(tags = "99.98 微信回调接口")
@RequestMapping(value = "/callback/wx", produces = { "application/json" })
public class WxCallBackController {
@Value("${spring.profiles.active}")
private String env;
@GetMapping(value = "/t")
public String testEnv() {
System.out.println(env);
return env;
}
@PostMapping(value = "/pro")
@ApiOperation(value = "购买服务(pro)", httpMethod = "POST", notes = "接口发布说明")
public Result<Object> wxcallback_pro(@RequestBody String orderNo) { // 入参修改 TODO
// 验证微信回调信息 TODO
// 交易成功
// updateAndInsert(orderNo);
return ResultUtil.data(orderNo, "购买成功");
}
@PostMapping(value = "/test")
@ApiOperation(value = "购买服务(test)", httpMethod = "POST", notes = "接口发布说明")
public Result<Object> wxcallback_test(@RequestParam String orderNo) {
if (!env.equals("dev") && !env.equals("test")) {
return ResultUtil.error("请切换到开发/测试环境");
}
updateAndInsert(orderNo);
return ResultUtil.data(orderNo, "购买成功");
}
private void updateAndInsert(String orderNo) {
// 修改订单表
QyzxOrderRecord qyzxOrderRecord = QyzxOrderRecord.builder().build()
.selectOne(new LambdaQueryWrapper<QyzxOrderRecord>().eq(QyzxOrderRecord::getOrderNo, orderNo)); // 查询该订单
qyzxOrderRecord.setOrderStatus(1); // 修改订单状态
qyzxOrderRecord.update(new LambdaUpdateWrapper<QyzxOrderRecord>().eq(QyzxOrderRecord::getOrderNo, orderNo)); // 更新数据
// 插入套餐余量表
String jsonStr = qyzxOrderRecord.getOrderDetail(); // json字符串
JSONObject jsonObject = JSONUtil.parseObj(jsonStr); // json对象
Integer expiration = jsonObject.getInt("expiration"); // 商品有效期(天)
Date expireDate = DateUtil.offset(new Date(), DateField.DAY_OF_YEAR, expiration); // 时间偏移
String content = jsonObject.getStr("content"); // 商品名称
Integer specification = jsonObject.getInt("specification"); // 商品规格
String unit = jsonObject.getStr("unit");
// Double originalPrice = jsonObject.getDouble("originalPrice"); // 商品原价
Double nowPrice = jsonObject.getDouble("nowPrice"); // 购买价
Integer count = qyzxOrderRecord.getCount(); // 订单购买数量
Integer pmid = qyzxOrderRecord.getPmid(); // 付费模块id
Integer pcid = qyzxOrderRecord.getPcid(); // 付费内容id
Integer createdUser = qyzxOrderRecord.getCreateUser(); // 订单创建人
Integer orgCode = qyzxOrderRecord.getOrgCode(); // 公司
QyzxRemainingQuantity quantity = new QyzxRemainingQuantity();
quantity.setOrderNo(orderNo); // 订单号
quantity.setContent(content); // 商品名称
quantity.setExpireDate(expireDate); // 到期时间
quantity.setSpecification(specification); // 套餐规格
Integer totalNum = specification * count; // 套餐总量
quantity.setTotalNum(totalNum);
quantity.setRemainder(totalNum); // 套餐剩余数(同上)
quantity.setCount(count); // 购买数量
quantity.setPmid(pmid); // 付费模块id
quantity.setPcid(pcid); // 付费内容id
quantity.setCreateUser(createdUser);
quantity.setOrgCode(orgCode);
quantity.insert();
// 插入购买记录表
QyzxBuyRecord qyzxBuyRecord = new QyzxBuyRecord();
qyzxBuyRecord.setSpecification(specification);
qyzxBuyRecord.setUnit(unit);
qyzxBuyRecord.setContent(content);
qyzxBuyRecord.setCreateUser(createdUser);
qyzxBuyRecord.setOrderNo(orderNo);
qyzxBuyRecord.setPmid(pmid);
qyzxBuyRecord.setPcid(pcid);
qyzxBuyRecord.setPrice(nowPrice);
qyzxBuyRecord.setCount(count);
qyzxBuyRecord.setTotalPrice(nowPrice * count);
qyzxBuyRecord.setExpireDate(expireDate);
qyzxBuyRecord.setPayment(1); // 1-微信 2-支付宝
qyzxBuyRecord.setInvoiceStatus(0); // 0-待开票 1-开票中 2-已开票 3-开票失败
qyzxBuyRecord.setOrgCode(orgCode);
qyzxBuyRecord.insert();
}
}
...@@ -35,6 +35,7 @@ public class WebSecurityConfig implements WebMvcConfigurer { ...@@ -35,6 +35,7 @@ public class WebSecurityConfig implements WebMvcConfigurer {
//.excludePathPatterns("/") //.excludePathPatterns("/")
registry.addInterceptor(getSessionInterceptor()) registry.addInterceptor(getSessionInterceptor())
.addPathPatterns("/**") .addPathPatterns("/**")
.excludePathPatterns("/callback/**")
.excludePathPatterns("/actuator/*") .excludePathPatterns("/actuator/*")
.excludePathPatterns("/doc*") .excludePathPatterns("/doc*")
.excludePathPatterns("/v2/**") .excludePathPatterns("/v2/**")
......
package cn.timer.api.config.quartz;
//import org.quartz.Job;
//import org.quartz.JobExecutionContext;
//import org.quartz.JobExecutionException;
//
//public interface BaseJob extends Job {
// public void execute(JobExecutionContext context) throws JobExecutionException;
//}
/**
* <p>Title: QyzxBusinessController.java</p>
* <p>Description: </p>
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
package cn.timer.api.controller.qyzx;
import java.util.List;
import javax.transaction.Transactional;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import cn.timer.api.bean.qyzx.businessService.QyzxBuyRecord;
import cn.timer.api.bean.qyzx.businessService.QyzxInvoiceData;
import cn.timer.api.bean.qyzx.businessService.QyzxOrderRecord;
import cn.timer.api.bean.qyzx.businessService.QyzxPayContent;
import cn.timer.api.bean.qyzx.businessService.QyzxRemainingQuantity;
import cn.timer.api.bean.qyzx.businessService.QyzxUseRecord;
import cn.timer.api.config.annotation.CurrentUser;
import cn.timer.api.config.annotation.UserBean;
import cn.timer.api.utils.Result;
import cn.timer.api.utils.ResultUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* <p>
* Title: QyzxBusinessController.java
* </p>
* <p>
* Description:
* </p>
*
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
@Transactional
@RestController
@Api(tags = "4.1企业中心(购买服务)")
@RequestMapping(value = "/qyzxbs", produces = { "application/json" })
public class QyzxBusinessController {
@GetMapping(value = "/getAllQuantity")
@ApiOperation(value = "获取套餐余量信息", httpMethod = "GET", notes = "接口发布说明")
public Result<List<QyzxRemainingQuantity>> s(@CurrentUser UserBean userBean) {
List<QyzxRemainingQuantity> list = QyzxRemainingQuantity.builder().build()
.selectList(new LambdaQueryWrapper<QyzxRemainingQuantity>().eq(QyzxRemainingQuantity::getIsDelete, 0)
.eq(QyzxRemainingQuantity::getOrgCode, userBean.getOrgCode()));
return ResultUtil.data(list, "查询成功");
}
@GetMapping(value = "/getQuantity")
@ApiOperation(value = "获取套餐余量信息(名称,数量,单位)", httpMethod = "GET", notes = "接口发布说明")
public Result<List<QyzxRemainingQuantity>> getQuantity(@CurrentUser UserBean userBean) {
List<QyzxRemainingQuantity> qyzxRemainingQuantitys = QyzxRemainingQuantity.builder().build()
.selectList(new LambdaQueryWrapper<QyzxRemainingQuantity>().eq(QyzxRemainingQuantity::getIsDelete, 0)
.eq(QyzxRemainingQuantity::getOrgCode, userBean.getOrgCode())
.select(QyzxRemainingQuantity::getOrderNo, QyzxRemainingQuantity::getContent,
QyzxRemainingQuantity::getRemainder, QyzxRemainingQuantity::getUnit));
return ResultUtil.data(qyzxRemainingQuantitys, "获取成功");
}
@GetMapping(value = "/getPayList/Contract")
@ApiOperation(value = "获取短信商品列表", httpMethod = "GET", notes = "接口发布说明")
public Result<List<QyzxPayContent>> getPayListwithContract(@CurrentUser UserBean userBean) {
List<QyzxPayContent> list = QyzxPayContent.builder().build()
.selectList(new LambdaQueryWrapper<QyzxPayContent>().eq(QyzxPayContent::getPmid, 1).select(
QyzxPayContent::getNowPrice, QyzxPayContent::getOriginalPrice, QyzxPayContent::getSpecification,
QyzxPayContent::getExpiration));
return ResultUtil.data(list, "获取成功");
}
@GetMapping(value = "/getPayList/Msg")
@ApiOperation(value = "获取电子合同商品列表", httpMethod = "GET", notes = "接口发布说明")
public Result<List<QyzxPayContent>> getPayListWithMsg(@CurrentUser UserBean userBean) {
List<QyzxPayContent> list = QyzxPayContent.builder().build()
.selectList(new LambdaQueryWrapper<QyzxPayContent>().eq(QyzxPayContent::getPmid, 2).select(
QyzxPayContent::getNowPrice, QyzxPayContent::getOriginalPrice, QyzxPayContent::getSpecification,
QyzxPayContent::getExpiration));
return ResultUtil.data(list, "获取成功");
}
@PostMapping(value = "/generateOrder")
@ApiOperation(value = "生成购买订单", httpMethod = "POST", notes = "接口发布说明")
public Result<QyzxOrderRecord> generateOrder(@CurrentUser UserBean userBean,
@RequestBody QyzxOrderRecord qyzxOrderRecord) {
Integer orgCode = userBean.getOrgCode();
String orderNo = String.valueOf(System.currentTimeMillis()) + orgCode; // 时间毫秒数+orgCode
qyzxOrderRecord.setCreateUser(userBean.getEmpNum()); // 创建人
qyzxOrderRecord.setOrgCode(orgCode);
qyzxOrderRecord.setOrderNo(orderNo); // 订单号
qyzxOrderRecord.setOrderStatus(0); // 订单状态-无
Integer pcid = qyzxOrderRecord.getPcid(); // 商品id
QyzxPayContent qyzxPayContent = QyzxPayContent.builder().build();
QyzxPayContent qyzxPayContent2 = qyzxPayContent.selectOne(
Wrappers.lambdaQuery(qyzxPayContent).eq(QyzxPayContent::getId, pcid).select(QyzxPayContent::getContent,
QyzxPayContent::getSpecification, QyzxPayContent::getUnit, QyzxPayContent::getExpiration,
QyzxPayContent::getOriginalPrice, QyzxPayContent::getNowPrice));
JSONObject json = JSONUtil.parseObj(qyzxPayContent2);
qyzxOrderRecord.setOrderDetail(json.toString()); // 订单商品详情-json字符串
qyzxOrderRecord.insert();
// 请求第三方接口生成预支付交易,返回二维码链接code_url TODO
// 生成二维码 TODO
return ResultUtil.data(qyzxOrderRecord, "生成订单成功");
}
@GetMapping(value = "/queryBuyRecord")
@ApiOperation(value = "查询购买记录", httpMethod = "GET", notes = "接口发布说明")
public Result<List<QyzxBuyRecord>> queryBuyRecord(@CurrentUser UserBean userBean,
@RequestParam(defaultValue = "1", required = false) Integer pageNum,
@RequestParam(defaultValue = "10", required = false) Integer pageSize,
@RequestParam(required = false) String query, @RequestParam(required = false) String stime,
@RequestParam(required = false) String etime) {
QueryWrapper<QyzxBuyRecord> queryWrapper = new QueryWrapper<>();
// queryWrapper.eq("org_code", userBean.getOrgCode())
// .between(!StrUtil.hasBlank(stime) && !StrUtil.hasBlank(etime), "create_time",
// !StrUtil.hasBlank(stime) ? stime : "1000-01-01 00:00:00",
// !StrUtil.hasBlank(etime) ? etime : "9999-01-01 00:00:00")
// .and(!StrUtil.hasBlank(query), wq -> wq.like("order_no", query).or().like("content", query));
Page<Object> page = PageHelper.startPage(pageNum, pageSize);
List<QyzxBuyRecord> list = QyzxBuyRecord.builder().build().selectList(queryWrapper);
System.out.println(page.getTotal());
return ResultUtil.data(list, "查询成功");
}
@PostMapping(value = "/invoicing")
@ApiOperation(value = "开发票", httpMethod = "POST", notes = "接口发布说明")
public Result<QyzxInvoiceData> generateOrder(@CurrentUser UserBean userBean,
@RequestBody QyzxInvoiceData qyzxInvoiceData) {
String orderNo = qyzxInvoiceData.getOrderNo();
QyzxBuyRecord qyzxBuyRecord = QyzxBuyRecord.builder().build()
.selectOne(new LambdaQueryWrapper<QyzxBuyRecord>().eq(QyzxBuyRecord::getOrderNo, orderNo));
if (qyzxBuyRecord.getInvoiceStatus() != 0) {
return ResultUtil.error("开票失败,请检查发票状态");
}
qyzxInvoiceData.setCreateUser(userBean.getEmpNum());
qyzxInvoiceData.setOrgCode(userBean.getOrgCode());
qyzxInvoiceData.insert();
qyzxBuyRecord.setInvoiceStatus(1);
qyzxBuyRecord.update(new LambdaUpdateWrapper<QyzxBuyRecord>().eq(QyzxBuyRecord::getOrderNo, orderNo));
return ResultUtil.data(qyzxInvoiceData, "开票成功");
}
@GetMapping(value = "/queryInvoiceDetail")
@ApiOperation(value = "查询开票详情", httpMethod = "GET", notes = "接口发布说明")
public Result<QyzxInvoiceData> queryInvoiceDetail(@CurrentUser UserBean userBean, @RequestParam String orderNo) {
return ResultUtil.data(QyzxInvoiceData.builder().build()
.selectOne(new LambdaQueryWrapper<QyzxInvoiceData>().eq(QyzxInvoiceData::getOrderNo, orderNo)), "查询成功");
}
@GetMapping(value = "/queryMsgRecord")
@ApiOperation(value = "查询短信套餐余量", httpMethod = "GET", notes = "接口发布说明")
public Result<List<QyzxRemainingQuantity>> queryMsgRecord(@CurrentUser UserBean userBean) {
List<QyzxRemainingQuantity> list = QyzxRemainingQuantity.builder().build()
.selectList(new LambdaQueryWrapper<QyzxRemainingQuantity>()
.eq(QyzxRemainingQuantity::getOrgCode, userBean.getOrgCode())
.eq(QyzxRemainingQuantity::getPmid, 1));
return ResultUtil.data(list, "查询成功");
}
@GetMapping(value = "/queryContractRecord")
@ApiOperation(value = "查询电子合同套餐余量", httpMethod = "GET", notes = "接口发布说明")
public Result<List<QyzxRemainingQuantity>> queryContractRecord(@CurrentUser UserBean userBean) {
List<QyzxRemainingQuantity> list = QyzxRemainingQuantity.builder().build()
.selectList(new LambdaQueryWrapper<QyzxRemainingQuantity>()
.eq(QyzxRemainingQuantity::getOrgCode, userBean.getOrgCode())
.eq(QyzxRemainingQuantity::getPmid, 2));
return ResultUtil.data(list, "查询成功");
}
@GetMapping(value = "/queryMsgUseRecord")
@ApiOperation(value = "查询短信使用记录", httpMethod = "GET", notes = "接口发布说明")
public Result<List<QyzxUseRecord>> queryMsgUseRecord(@CurrentUser UserBean userBean, String orderNo) {
return ResultUtil.data(QyzxUseRecord.builder().build()
.selectList(new LambdaQueryWrapper<QyzxUseRecord>().eq(QyzxUseRecord::getOrderNo, orderNo)), "查询成功");
}
// TODO 不同业务使用 不同数据表
@GetMapping(value = "/queryContractUseRecord")
@ApiOperation(value = "查询电子合同套餐使用记录", httpMethod = "GET", notes = "接口发布说明")
public Result<Object> queryContractUseRecord(@CurrentUser UserBean userBean) {
return null;
}
}
/**
* <p>Title: QyzxOrderRecordMapper.java</p>
* <p>Description: </p>
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
package cn.timer.api.dao.qyzx.businessService;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import cn.timer.api.bean.qyzx.businessService.QyzxOrderRecord;
/**
* <p>Title: QyzxOrderRecordMapper.java</p>
* <p>Description: 用户订单持久层</p>
* @author dsc
* @date 2020年4月22日
* @version 1.0
*/
public interface QyzxOrderRecordMapper extends BaseMapper<QyzxOrderRecord>{
}
...@@ -54,13 +54,13 @@ public class ZcglPersonalAssetsDto extends Page implements Serializable { ...@@ -54,13 +54,13 @@ public class ZcglPersonalAssetsDto extends Page implements Serializable {
@ApiModelProperty(value = "资产名称", example = "桌子") @ApiModelProperty(value = "资产名称", example = "桌子")
private String zcmc; private String zcmc;
@ApiModelProperty(value = "查询条件", example = "名称 或 规格型号") // @ApiModelProperty(value = "查询条件", example = "名称 或 规格型号")
private String query; // private String query;
//
@ApiModelProperty(value = "查询开始时间", example = "") // @ApiModelProperty(value = "查询开始时间", example = "")
private Date startTime; // private Date startTime;
//
@ApiModelProperty(value = "查询结束时间", example = "") // @ApiModelProperty(value = "查询结束时间", example = "")
private Date endTime; // private Date endTime;
} }
/**
* <p>Title: BaseQuery.java</p>
* <p>Description: </p>
* @author dsc
* @date 2020年4月23日
* @version 1.0
*/
package cn.timer.api.utils.query;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* <p>
* Title: BaseQuery.java
* </p>
* <p>
* Description:
* </p>
*
* @author dsc
* @date 2020年4月23日
* @version 1.0
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class BaseQuery implements Serializable{
private static final long serialVersionUID = -2244756601623536423L;
// 当前页
@ApiModelProperty(value="当前页",example="1",required = false)
private Integer pageNum;
// 当前页总条数
@ApiModelProperty(value="模块id",example="10",required = false)
private Integer pageSize;
// 模糊查询
@ApiModelProperty(value="模糊查询",example="",required = false)
private String query;
// 开始时间
@ApiModelProperty(value="开始时间",example="",required = false)
private String stime;
// 结束时间
@ApiModelProperty(value="结束时间",example="",required = false)
private String etime;
}
...@@ -14,7 +14,6 @@ public class CronUtil { ...@@ -14,7 +14,6 @@ public class CronUtil {
ScheduleTask task = ScheduleTask.builder().build().selectOne(new LambdaQueryWrapper<ScheduleTask>() ScheduleTask task = ScheduleTask.builder().build().selectOne(new LambdaQueryWrapper<ScheduleTask>()
.eq(ScheduleTask::getClassName, className).eq(ScheduleTask::getMethodName, methodName)); // 数据库查询 .eq(ScheduleTask::getClassName, className).eq(ScheduleTask::getMethodName, methodName)); // 数据库查询
System.err.println(task);
if (task != null && task.getCron() != null) { if (task != null && task.getCron() != null) {
cron = task.getCron(); cron = task.getCron();
} }
......
...@@ -5,7 +5,6 @@ import java.util.Date; ...@@ -5,7 +5,6 @@ import java.util.Date;
import java.util.List; import java.util.List;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.scheduling.annotation.SchedulingConfigurer; import org.springframework.scheduling.annotation.SchedulingConfigurer;
import org.springframework.scheduling.config.ScheduledTaskRegistrar; import org.springframework.scheduling.config.ScheduledTaskRegistrar;
...@@ -28,7 +27,6 @@ import cn.timer.api.utils.aliyun.AliyunSMS; ...@@ -28,7 +27,6 @@ import cn.timer.api.utils.aliyun.AliyunSMS;
*/ */
@Component @Component
@Lazy(false) @Lazy(false)
@EnableScheduling
public class RemindUtil implements SchedulingConfigurer { public class RemindUtil implements SchedulingConfigurer {
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss"); private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
......
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