邮寄管理开发

This commit is contained in:
zhangqinlin
2021-09-07 18:10:52 +08:00
parent b8af9726df
commit d12a2c8a5d
9 changed files with 422 additions and 21 deletions
@@ -1,6 +1,8 @@
package com.jero.mail.controller;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -49,6 +51,7 @@ public class PayMailBillController extends JeroController<PayMailBill, IPayMailB
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<PayMailBill> queryWrapper = QueryGenerator.initQueryWrapper(payMailBill, req.getParameterMap());
queryWrapper.orderByAsc("post_status","create_time");
Page<PayMailBill> page = new Page<>(pageNo, pageSize);
IPage<PayMailBill> pageList = payMailBillService.page(page, queryWrapper);
return Result.OK(pageList);
@@ -70,12 +73,22 @@ public class PayMailBillController extends JeroController<PayMailBill, IPayMailB
/**
* 编辑
*
* @param payMailBill
* @return
*/
@ApiOperation(value="邮寄票据-编辑", notes="邮寄票据-编辑")
@ApiOperation(value="邮寄票据-编辑(邮寄和修改按钮统一接口)", notes="邮寄票据-编辑(邮寄和修改按钮统一接口)")
@PutMapping(value = "/edit")
public Result<?> edit(@RequestBody PayMailBill payMailBill) {
public Result<?> edit(@RequestParam(name="id") String id,
@RequestParam(name="sendMethod") Integer sendMethod,
@RequestParam(name="postNo") String postNo,
@RequestParam(name="sendDate") Date sendDate,
@RequestParam(name="remark") String remark
) {
PayMailBill payMailBill = new PayMailBill();
payMailBill.setId(id);
payMailBill.setSendMethod(sendMethod);
payMailBill.setPostNo(postNo);
payMailBill.setRemark(remark);
payMailBill.setSendDate(sendDate);
payMailBill.setPostStatus(1);
payMailBillService.updateById(payMailBill);
return Result.OK("编辑成功!");
}
@@ -88,7 +101,7 @@ public class PayMailBillController extends JeroController<PayMailBill, IPayMailB
*/
@ApiOperation(value="邮寄票据-通过id删除", notes="邮寄票据-通过id删除")
@DeleteMapping(value = "/delete")
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
public Result<?> delete(@RequestParam(name="id") String id) {
payMailBillService.removeById(id);
return Result.OK("删除成功!");
}
@@ -101,7 +114,7 @@ public class PayMailBillController extends JeroController<PayMailBill, IPayMailB
*/
@ApiOperation(value="邮寄票据-批量删除", notes="邮寄票据-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
public Result<?> deleteBatch(@RequestParam(name="ids") String ids) {
this.payMailBillService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
@@ -128,21 +141,13 @@ public class PayMailBillController extends JeroController<PayMailBill, IPayMailB
* @param request
* @param payMailBill
*/
@RequestMapping(value = "/exportXls")
@ApiOperation(value="邮寄票据-导出", notes="邮寄票据-导出")
@GetMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, PayMailBill payMailBill) {
return super.exportXls(request, payMailBill, PayMailBill.class, "邮寄票据");
Date day=new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒");
return super.exportXls(request, payMailBill, PayMailBill.class, df.format(day).toString()+"邮寄票据信息");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, PayMailBill.class);
}
}
@@ -0,0 +1,162 @@
package com.jero.mail.controller;
import java.util.Arrays;
import java.util.Date;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.jero.common.api.vo.Result;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.query.QueryGenerator;
import com.jero.mail.entity.PayMailBill;
import com.jero.mail.entity.PayMailBillList;
import com.jero.mail.entity.PayMailContract;
import com.jero.mail.service.IPayMailContractService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* @Description: 邮寄合同
* @Author: jeecg-boot
* @Date: 2021-09-07
* @Version: V1.0
*/
@Api(tags="邮寄合同")
@RestController
@RequestMapping("/payMailContract/payMailContract")
@Slf4j
public class PayMailContractController extends JeroController<PayMailContract, IPayMailContractService> {
@Autowired
private IPayMailContractService payMailContractService;
/**
* 分页列表查询
*
*/
@AutoLog(value = "邮寄合同-分页列表查询")
@ApiOperation(value="邮寄合同-分页列表查询", notes="邮寄合同-分页列表查询")
@GetMapping(value = "/list")
public Result<?> queryPageList(PayMailBillList payMailBillList,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<PayMailBillList> queryWrapper = QueryGenerator.initQueryWrapper(payMailBillList, req.getParameterMap());
Page<PayMailBillList> page = new Page<>(pageNo, pageSize);
IPage<PayMailBillList> pageList = payMailContractService.pageContract(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param payMailContract
* @return
*/
@AutoLog(value = "邮寄合同-添加")
@ApiOperation(value="邮寄合同-添加", notes="邮寄合同-添加")
@PostMapping(value = "/add")
public Result<?> add(@RequestBody PayMailContract payMailContract) {
payMailContractService.save(payMailContract);
return Result.OK("添加成功!");
}
/**
* 编辑
*
*/
@ApiOperation(value="邮寄合同-编辑(邮寄和修改按钮统一接口)", notes="邮寄合同-编辑(邮寄和修改按钮统一接口)")
@PutMapping(value = "/edit")
public Result<?> edit(@RequestParam(name="id") String id,
@RequestParam(name="sendMethod") Integer sendMethod,
@RequestParam(name="postNo") String postNo,
@RequestParam(name="sendDate") Date sendDate,
@RequestParam(name="remark") String remark
) {
PayMailContract payMailContract = new PayMailContract();
payMailContract.setId(id);
payMailContract.setSendMethod(sendMethod);
payMailContract.setPostno(postNo);
payMailContract.setRemark(remark);
payMailContract.setSenddate(sendDate);
payMailContract.setPostStatus(1);
payMailContractService.updateById(payMailContract);
return Result.OK("操作成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "邮寄合同-通过id删除")
@ApiOperation(value="邮寄合同-通过id删除", notes="邮寄合同-通过id删除")
@DeleteMapping(value = "/delete")
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
payMailContractService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "邮寄合同-批量删除")
@ApiOperation(value="邮寄合同-批量删除", notes="邮寄合同-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.payMailContractService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
@AutoLog(value = "邮寄合同-通过id查询")
@ApiOperation(value="邮寄合同-通过id查询", notes="邮寄合同-通过id查询")
@GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
PayMailContract payMailContract = payMailContractService.getById(id);
if(payMailContract==null) {
return Result.error("未找到对应数据");
}
return Result.OK(payMailContract);
}
/**
* 导出excel
*
* @param request
* @param payMailContract
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, PayMailContract payMailContract) {
return super.exportXls(request, payMailContract, PayMailContract.class, "邮寄合同");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, PayMailContract.class);
}
}
@@ -4,6 +4,7 @@ import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jero.common.aspect.annotation.Dict;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
@@ -56,11 +57,11 @@ public class PayMailBill implements Serializable {
@ApiModelProperty(value = "开票金额")
private java.lang.Integer invoiceAmount;
/**邮寄状态(0:未邮寄,1::已邮寄)*/
@Dict(dicCode = "mail_type")
@Excel(name = "邮寄状态(0:未邮寄,1::已邮寄)", width = 15)
@ApiModelProperty(value = "邮寄状态(0:未邮寄,1::已邮寄)")
private java.lang.Integer postStatus;
/**快递公司(1:EMS,2:顺丰)*/
@Excel(name = "快递公司(1:EMS,2:顺丰)", width = 15)
@ApiModelProperty(value = "快递公司(1:EMS,2:顺丰)")
private java.lang.Integer sendMethod;
/**快递单号*/
@@ -92,7 +93,7 @@ public class PayMailBill implements Serializable {
@ApiModelProperty(value = "备注")
private java.lang.String remark;
/**项目名称*/
@Excel(name = "项目名称", width = 15)
@Excel(name = "来款项目", width = 15)
@ApiModelProperty(value = "项目名称")
private java.lang.String projectName;
/**来款单位*/
@@ -0,0 +1,48 @@
package com.jero.mail.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class PayMailBillList {
@ApiModelProperty(value = "id主键")
private java.lang.String id;
@ApiModelProperty(value = "邮寄状态")
private java.lang.String postStatus;
@ApiModelProperty(value = "邮寄方式")
private java.lang.String sendMethod;
@ApiModelProperty(value = "邮寄单号")
private java.lang.String postNo;
@ApiModelProperty(value = "负责人")
private java.lang.String liaisonMan;
@ApiModelProperty(value = "负责人手机号")
private java.lang.String mobile;
@ApiModelProperty(value = "合同编号")
private java.lang.String contractNum;
@ApiModelProperty(value = "合同名称")
private java.lang.String contractName;
@ApiModelProperty(value = "签订单位")
private java.lang.String signedCompanyTemporaryName;
@ApiModelProperty(value = "邮寄联系人")
private java.lang.String principalName;
@ApiModelProperty(value = "合同总金额")
private java.lang.String contractAmount;
}
@@ -0,0 +1,84 @@
package com.jero.mail.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: pay_mail_contract
* @Author: jeecg-boot
* @Date: 2021-09-07
* @Version: V1.0
*/
@Data
@TableName("pay_mail_contract")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="pay_mail_contract对象", description="pay_mail_contract")
public class PayMailContract implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private java.lang.String id;
/**创建人*/
@ApiModelProperty(value = "创建人")
private java.lang.String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private java.lang.String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**合同id*/
@Excel(name = "合同id", width = 15)
@ApiModelProperty(value = "合同id")
private java.lang.String contractId;
/**邮寄状态(0:未邮寄,1::已邮寄)*/
@Excel(name = "邮寄状态(0:未邮寄,1::已邮寄)", width = 15)
@ApiModelProperty(value = "邮寄状态(0:未邮寄,1::已邮寄)")
private java.lang.Integer postStatus;
/**快递公司(1:EMS,2:顺丰)*/
@Excel(name = "快递公司(1:EMS,2:顺丰)", width = 15)
@ApiModelProperty(value = "快递公司(1:EMS,2:顺丰)")
private java.lang.Integer sendMethod;
/**快递单号*/
@Excel(name = "快递单号", width = 15)
@ApiModelProperty(value = "快递单号")
private java.lang.String postno;
/**邮寄时间*/
@Excel(name = "邮寄时间", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "邮寄时间")
private java.util.Date senddate;
/**备注*/
@Excel(name = "备注", width = 15)
@ApiModelProperty(value = "备注")
private java.lang.String remark;
/**联系人*/
@Excel(name = "联系人", width = 15)
@ApiModelProperty(value = "联系人")
private java.lang.String liaisonMan;
/**联系人手机号*/
@Excel(name = "联系人手机号", width = 15)
@ApiModelProperty(value = "联系人手机号")
private java.lang.String mobile;
}
@@ -0,0 +1,23 @@
package com.jero.mail.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.mail.entity.PayMailBillList;
import com.jero.mail.entity.PayMailContract;
import org.apache.ibatis.annotations.Param;
/**
* @Description: pay_mail_contract
* @Author: jeecg-boot
* @Date: 2021-09-07
* @Version: V1.0
*/
public interface PayMailContractMapper extends BaseMapper<PayMailContract> {
IPage<PayMailBillList> pageContract(Page<PayMailBillList> page, @Param(Constants.WRAPPER) QueryWrapper<PayMailBillList> queryWrapper);
}
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jero.mail.mapper.PayMailContractMapper">
<select id="pageContract" resultType="com.jero.mail.entity.PayMailBillList">
SELECT
pc.id,
pc.post_status as postStatus,
pc.send_method as sendMethod,
pc.postNo,
pc.liaison_man as liaisonMan,
pc.mobile,
pic.contract_num as contractNum,
pic.contract_name as contractName,
pic.signed_company_temporary_name as signedCompanyTemporaryName,
pic.principal_name as principalName,
pic.contract_amount as contractAmount FROM pay_mail_contract as pc left join pay_income_contract as pic on(pc.contract_id=pic.id)
${ew.customSqlSegment}
</select>
</mapper>
@@ -0,0 +1,27 @@
package com.jero.mail.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.mail.entity.PayMailBillList;
import com.jero.mail.entity.PayMailContract;
import com.jero.mail.mapper.PayMailContractMapper;
import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.Resource;
/**
* @Description: pay_mail_contract
* @Author: jeecg-boot
* @Date: 2021-09-07
* @Version: V1.0
*/
public interface IPayMailContractService extends IService<PayMailContract> {
IPage<PayMailBillList> pageContract(Page<PayMailBillList> page, QueryWrapper<PayMailBillList> queryWrapper);
}
@@ -0,0 +1,32 @@
package com.jero.mail.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.mail.entity.PayMailBillList;
import com.jero.mail.entity.PayMailContract;
import com.jero.mail.mapper.PayMailContractMapper;
import com.jero.mail.service.IPayMailContractService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
* @Description: pay_mail_contract
* @Author: jeecg-boot
* @Date: 2021-09-07
* @Version: V1.0
*/
@Service
public class PayMailContractServiceImpl extends ServiceImpl<PayMailContractMapper, PayMailContract> implements IPayMailContractService {
@Resource
private PayMailContractMapper payMailContractMapper;
@Override
public IPage<PayMailBillList> pageContract(Page<PayMailBillList> page, QueryWrapper<PayMailBillList> queryWrapper) {
return payMailContractMapper.pageContract(page,queryWrapper);
}
}