leon пре 4 година
родитељ
комит
a10be6b49f

+ 87 - 0
src/main/java/com/mokamrp/privates/controller/pangu/FosterwxStationPayController.java

@@ -0,0 +1,87 @@
+package com.mokamrp.privates.controller.pangu;
+
+import com.mokamrp.privates.constant.HttpMsg;
+import com.mokamrp.privates.constant.HttpStatus;
+import com.mokamrp.privates.entity.PostBasePageHandle;
+import com.mokamrp.privates.entity.VoltaHandle;
+import com.mokamrp.privates.help.AjaxResult;
+import com.mokamrp.privates.entity.ResHandle;
+import com.mokamrp.privates.help.Analysis;
+import com.mokamrp.privates.interceptor.AuthUser;
+import com.mokamrp.privates.mapper.pojo.User;
+import io.swagger.annotations.Api;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.RequestMapping;
+import com.mokamrp.privates.service.pangu.FosterwxStationPayService;
+import com.mokamrp.privates.mapper.pangu.pojo.FosterwxStationPay;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import com.mokamrp.privates.controller.BaseController;
+import javax.validation.Valid;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.List;
+
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+
+/**
+ * <p>
+ * 盘古养号站点支出 前端控制器
+ * </p>
+ *
+ * @author leon
+ * @since 2021-12-01
+ */
+@RestController
+@Api(tags = "站点支出")
+@RequestMapping("/fosterwxStationPay")
+public class FosterwxStationPayController extends BaseController<FosterwxStationPay> {
+
+    @Autowired
+    public FosterwxStationPayService fosterwxStationPayService;
+
+    /*
+     * @fast
+     * 默认生成的控制器所继承的父类中有index/add/edit/del四个基础方法,均为post json请求
+     * 如果需要定制化,需要将BaseController中对应的方法复制到当前控制器,然后进行修改
+     */
+
+    @PostMapping("/list")
+    public Object list(@Valid @RequestBody PostBasePageHandle postBasePageHandle, BindingResult bindingResult){
+        if (bindingResult.hasErrors()) {
+            return AjaxResult.error(HttpStatus.ERROR, bindingResult.getFieldError().getDefaultMessage());
+        }
+        ResHandle<List<FosterwxStationPay>> res = fosterwxStationPayService.getList(postBasePageHandle);
+        return AjaxResult.success(res);
+    }
+
+    @PostMapping("/import")
+    public Object uploadFile(@RequestBody MultipartFile file, @AuthUser User authUser) {
+        Map<String, Object> map = new HashMap<>(16);
+        Map<Integer, String> feild = new HashMap<>(5);
+        feild.put(0, "stationName");
+        feild.put(1, "payType");
+        feild.put(2, "amtType");
+        feild.put(3, "amt");
+        feild.put(4, "payAt");
+        feild.put(5, "remark|default");
+        List<Map<String, String>> row = new ArrayList<>();
+        VoltaHandle<ArrayList<Map<String, String>>> voltaRes = Analysis.analysis(file, feild);
+        if (voltaRes.getErr() != null) {
+            return AjaxResult.error(voltaRes.getErr());
+        }
+        row = voltaRes.getData();
+        try {
+            VoltaHandle<Boolean> res = fosterwxStationPayService.importData(row, authUser);
+        } catch (Exception e) {
+            return AjaxResult.error(e.getMessage());
+        }
+        return AjaxResult.success(HttpMsg.importSuccess);
+    }
+}
+

+ 1 - 0
src/main/java/com/mokamrp/privates/mapper/data/H5ComplaintOpenMapper.xml

@@ -24,5 +24,6 @@
             <if test="params.domain != null">and T.domain = #{params.domain}</if>
             <if test="params.startDate != null and params.endDate != null">and T.date between #{params.startDate} and #{params.endDate}</if>
         </where>
+        order by T.date desc
     </select>
 </mapper>

+ 1 - 0
src/main/java/com/mokamrp/privates/mapper/pangu/FosterwxCashWorkBoxClientInfoMapper.xml

@@ -37,5 +37,6 @@
             </foreach>
         </if>
         </where>
+        order by id desc
     </select>
 </mapper>

+ 22 - 0
src/main/java/com/mokamrp/privates/mapper/pangu/FosterwxStationPayMapper.java

@@ -0,0 +1,22 @@
+package com.mokamrp.privates.mapper.pangu;
+
+import com.mokamrp.privates.entity.PostBasePageHandle;
+import com.mokamrp.privates.mapper.pangu.pojo.FosterwxStationPay;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.stereotype.Component;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * <p>
+ * 盘古养号站点支出 Mapper 接口
+ * </p>
+ *
+ * @author leon
+ * @since 2021-12-01
+ */
+@Component
+public interface FosterwxStationPayMapper extends BaseMapper<FosterwxStationPay> {
+    public List<FosterwxStationPay> getList(Page<FosterwxStationPay> pageObj, @Param("params") PostBasePageHandle handle);
+}

+ 32 - 0
src/main/java/com/mokamrp/privates/mapper/pangu/FosterwxStationPayMapper.xml

@@ -0,0 +1,32 @@
+<?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.mokamrp.privates.mapper.pangu.FosterwxStationPayMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.mokamrp.privates.mapper.pangu.pojo.FosterwxStationPay">
+        <id column="id" property="id" />
+        <result column="station_id" property="stationId" />
+        <result column="pay_type" property="payType" />
+        <result column="amt_type" property="amtType" />
+        <result column="amt" property="amt" />
+        <result column="remark" property="remark" />
+        <result column="pay_at" property="payAt" />
+        <result column="create_uid" property="createUid" />
+        <result column="create_at" property="createAt" />
+        <result column="update_at" property="updateAt" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, station_id, pay_type, amt_type, amt, remark, pay_at, create_uid, create_at, update_at
+    </sql>
+    <select id="getList" resultType="com.mokamrp.privates.mapper.pangu.pojo.FosterwxStationPay">
+        SELECT * FROM pan_fosterwx_station_pay
+        <where>
+            <if test="params.stationId != nil">and station_id = #{params.stationId}</if>
+            <if test="params.type != nil">and station_id = #{params.stationId}</if>
+            <if test="params.stationId != nil">and station_id = #{params.stationId}</if>
+            <if test="params.stationId != nil">and station_id = #{params.stationId}</if>
+        </where>
+    </select>
+</mapper>

+ 91 - 0
src/main/java/com/mokamrp/privates/mapper/pangu/pojo/FosterwxStationPay.java

@@ -0,0 +1,91 @@
+package com.mokamrp.privates.mapper.pangu.pojo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 盘古养号站点支出
+ * </p>
+ *
+ * @author leon
+ * @since 2021-12-01
+ */
+@Data
+@TableName("pan_fosterwx_station_pay")
+public class FosterwxStationPay extends Model<FosterwxStationPay> {
+
+    private static final long serialVersionUID = 1L;
+
+      @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 站点ID
+     */
+    private Integer stationId;
+
+    /**
+     * 支付分配(1.养号支出2.运营支出)
+     */
+    private Integer payType;
+
+    /**
+     * 费用类型(1.手机采购
+
+2.辅材费用
+
+3.首充话费报销
+
+4.注册验收奖金
+
+5.养号完成奖金
+
+6.推荐人奖金
+
+7.接待费用
+
+8.其他
+
+9.每月预支话费
+
+10.每月工资)
+     */
+    private Integer amtType;
+
+    /**
+     * 金额
+     */
+    private Double amt;
+
+    /**
+     * 说明
+     */
+    private String remark;
+
+    /**
+     * 支出时间
+     */
+    private LocalDateTime payAt;
+
+    /**
+     * 操作人
+     */
+    private Integer createUid;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createAt;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateAt;
+}

+ 25 - 0
src/main/java/com/mokamrp/privates/service/pangu/FosterwxStationPayService.java

@@ -0,0 +1,25 @@
+package com.mokamrp.privates.service.pangu;
+
+import com.mokamrp.privates.entity.VoltaHandle;
+import com.mokamrp.privates.mapper.pangu.pojo.FosterwxStationPay;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.mokamrp.privates.entity.PostBasePageHandle;
+import com.mokamrp.privates.entity.ResHandle;
+import com.mokamrp.privates.mapper.pojo.User;
+
+import java.util.List;
+import java.util.Map;
+/**
+ * <p>
+ * 盘古养号站点支出 服务类
+ * </p>
+ *
+ * @author leon
+ * @since 2021-12-01
+ */
+public interface FosterwxStationPayService extends IService<FosterwxStationPay> {
+    //.@leon 获取数据列表
+    public ResHandle<List<FosterwxStationPay>> getList(PostBasePageHandle handle);
+
+    public VoltaHandle<Boolean> importData(List<Map<String, String>> row, User authUser) throws Exception;
+}

+ 93 - 0
src/main/java/com/mokamrp/privates/service/pangu/impl/FosterwxStationPayServiceImpl.java

@@ -0,0 +1,93 @@
+package com.mokamrp.privates.service.pangu.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.mokamrp.privates.entity.VoltaHandle;
+import com.mokamrp.privates.mapper.pangu.pojo.*;
+import com.mokamrp.privates.mapper.pangu.FosterwxStationPayMapper;
+import com.mokamrp.privates.mapper.pojo.Corp;
+import com.mokamrp.privates.mapper.pojo.User;
+import com.mokamrp.privates.service.pangu.FosterwxStationPayService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mokamrp.privates.service.pangu.FosterwxStationService;
+import org.springframework.stereotype.Service;
+import com.mokamrp.privates.entity.PostBasePageHandle;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import com.mokamrp.privates.entity.ResHandle;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.*;
+import java.util.stream.Collectors;
+
+/**
+ * <p>
+ * 盘古养号站点支出 服务实现类
+ * </p>
+ *
+ * @author leon
+ * @since 2021-12-01
+ */
+@Service
+public class FosterwxStationPayServiceImpl extends ServiceImpl<FosterwxStationPayMapper, FosterwxStationPay> implements FosterwxStationPayService {
+
+    @Autowired
+    public FosterwxStationPayMapper fosterwxStationPayMapper;
+
+    @Autowired
+    public FosterwxStationService fosterwxStationService;
+    /**
+     * 获取数据列表 支持分页
+     * @param handle
+     * @return
+     */
+    public ResHandle<List<FosterwxStationPay>> getList(PostBasePageHandle handle) {
+        Integer pagesize = handle.getPagesize();
+        Integer page = handle.getPage();
+        Page<FosterwxStationPay> pageObj = new Page<FosterwxStationPay>(page, pagesize);
+        List<FosterwxStationPay> list = fosterwxStationPayMapper.getList(pageObj,handle);
+        ResHandle<List<FosterwxStationPay>> res = new ResHandle<>();
+        res.setList(list);
+        res.setTotal(pageObj.getTotal());
+        return res;
+    }
+
+    /**
+     * 导入数据
+     *
+     * @param row
+     * @return
+     */
+    @Transactional(rollbackFor = Exception.class)
+    public VoltaHandle<Boolean> importData(List<Map<String, String>> row, User authUser) throws Exception {
+        VoltaHandle<Boolean> res = new VoltaHandle<>();
+        if (row.size() <= 0) {
+            throw new Exception("表格读取完成后,没有获取到任何数据");
+        }
+        DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        for (int i = 0; i < row.size(); i++) {
+            LocalDateTime nowDate = LocalDateTime.now();
+            Map<String, String> cell = row.get(i);
+            FosterwxStationPay fosterwxStationPay = new FosterwxStationPay();
+            FosterwxStation stationInfo = fosterwxStationService.getOne(new QueryWrapper<FosterwxStation>()
+                    .eq("station_name", row.get(i).get("stationName")));
+            if (stationInfo == null) {
+                throw new Exception("站点编号不存在");
+            }
+            fosterwxStationPay.setStationId(stationInfo.getId());
+            fosterwxStationPay.setPayType(Integer.parseInt(row.get(i).get("payType")));
+            fosterwxStationPay.setAmtType(Integer.parseInt(row.get(i).get("amtType")));
+            fosterwxStationPay.setAmt(Double.valueOf(row.get(i).get("amt")));
+            fosterwxStationPay.setPayAt(LocalDateTime.parse(row.get(i).get("payAt") + " 00:00:00", df));
+            fosterwxStationPay.setRemark(row.get(i).get("remark"));
+            fosterwxStationPay.setCreateAt(nowDate);
+            fosterwxStationPay.setUpdateAt(nowDate);
+            fosterwxStationPay.setCreateUid(authUser.getId());
+            this.save(fosterwxStationPay);
+        }
+        return res;
+    }
+}

+ 1 - 1
src/test/java/com/mokamrp/AutoMPPangu.java

@@ -46,7 +46,7 @@ public class AutoMPPangu {
                 .setColumnNaming(NamingStrategy.underline_to_camel)
                 .setNaming(NamingStrategy.underline_to_camel) // 数据库表映射到实体的命名策略,下划线转驼峰命名
                 .setTablePrefix("pan_") //表名前缀
-                .setInclude("pan_fosterwx_station_bind_box_group");
+                .setInclude("pan_fosterwx_station_pay");
         //4. 包名策略配置
         PackageConfig pkConfig = new PackageConfig();
         pkConfig.setParent("com.mokamrp.privates")