jiangping
2023-08-11 345821ca954fc16b8a015e5726fd845334a12956
1.0.2
已添加6个文件
已修改3个文件
547 ■■■■■ 文件已修改
server/src/main/java/doumeemes/api/business/SalaryParamController.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/api/ext/SalaryParamExtController.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/business/SalaryParamMapper.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/business/model/SalaryParam.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/business/model/WorkPlans.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/business/vo/WorkPlansVO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/service/business/SalaryParamService.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/service/business/impl/SalaryParamServiceImpl.java 157 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/resources/mappers/WorkPlansExtMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/api/business/SalaryParamController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,90 @@
package doumeemes.api.business;
import doumeemes.api.BaseController;
import doumeemes.core.annotation.excel.ExcelExporter;
import doumeemes.core.annotation.pr.PreventRepeat;
import doumeemes.core.model.ApiResponse;
import doumeemes.core.model.PageWrap;
import doumeemes.core.model.PageData;
import doumeemes.dao.business.model.SalaryParam;
import doumeemes.service.business.SalaryParamService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
/**
 * @author æ±Ÿè¹„蹄
 * @date 2023/08/11 15:29
 */
@Api(tags = "设置类-绩效工资配置表")
@RestController
@RequestMapping("/business/salaryParam")
public class SalaryParamController extends BaseController {
    @Autowired
    private SalaryParamService salaryParamService;
    @PreventRepeat
    @ApiOperation("新建")
    @PostMapping("/create")
    @RequiresPermissions("business:salaryparam:create")
    public ApiResponse create(@RequestBody SalaryParam salaryParam) {
        return ApiResponse.success(salaryParamService.create(salaryParam));
    }
    @ApiOperation("根据ID删除")
    @GetMapping("/delete/{id}")
    @RequiresPermissions("business:salaryparam:delete")
    public ApiResponse deleteById(@PathVariable Integer id) {
        salaryParamService.deleteById(id);
        return ApiResponse.success(null);
    }
    @ApiOperation("批量删除")
    @GetMapping("/delete/batch")
    @RequiresPermissions("business:salaryparam:delete")
    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
        String [] idArray = ids.split(",");
        List<Integer> idList = new ArrayList<>();
        for (String id : idArray) {
            idList.add(Integer.valueOf(id));
        }
        salaryParamService.deleteByIdInBatch(idList);
        return ApiResponse.success(null);
    }
    @ApiOperation("根据ID修改")
    @PostMapping("/updateById")
    @RequiresPermissions("business:salaryparam:update")
    public ApiResponse updateById(@RequestBody SalaryParam salaryParam) {
        salaryParamService.updateById(salaryParam);
        return ApiResponse.success(null);
    }
    @ApiOperation("分页查询")
    @PostMapping("/page")
    @RequiresPermissions("business:salaryparam:query")
    public ApiResponse<PageData<SalaryParam>> findPage (@RequestBody PageWrap<SalaryParam> pageWrap) {
        return ApiResponse.success(salaryParamService.findPage(pageWrap));
    }
    @ApiOperation("导出Excel")
    @PostMapping("/exportExcel")
    @RequiresPermissions("business:salaryparam:exportExcel")
    public void exportExcel (@RequestBody PageWrap<SalaryParam> pageWrap, HttpServletResponse response) {
        ExcelExporter.build(SalaryParam.class).export(salaryParamService.findPage(pageWrap).getRecords(), "设置类-绩效工资配置表", response);
    }
    @ApiOperation("根据ID查询")
    @GetMapping("/{id}")
    @RequiresPermissions("business:salaryparam:query")
    public ApiResponse findById(@PathVariable Integer id) {
        return ApiResponse.success(salaryParamService.findById(id));
    }
}
server/src/main/java/doumeemes/api/ext/SalaryParamExtController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,90 @@
package doumeemes.api.ext;
import doumeemes.api.BaseController;
import doumeemes.core.annotation.excel.ExcelExporter;
import doumeemes.core.annotation.pr.PreventRepeat;
import doumeemes.core.model.ApiResponse;
import doumeemes.core.model.PageData;
import doumeemes.core.model.PageWrap;
import doumeemes.dao.business.model.SalaryParam;
import doumeemes.service.business.SalaryParamService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
/**
 * @author æ±Ÿè¹„蹄
 * @date 2023/08/11 15:29
 */
@Api(tags = "设置类-绩效工资配置表")
@RestController
@RequestMapping("/ext/salaryParam")
public class SalaryParamExtController extends BaseController {
    @Autowired
    private SalaryParamService salaryParamService;
    @PreventRepeat
    @ApiOperation("新建")
    @PostMapping("/create")
    @RequiresPermissions("business:salaryparam:create")
    public ApiResponse create(@RequestBody SalaryParam salaryParam) {
        return ApiResponse.success(salaryParamService.create(salaryParam));
    }
    @ApiOperation("根据ID删除")
    @GetMapping("/delete/{id}")
    @RequiresPermissions("business:salaryparam:delete")
    public ApiResponse deleteById(@PathVariable Integer id) {
        salaryParamService.deleteById(id);
        return ApiResponse.success(null);
    }
    @ApiOperation("批量删除")
    @GetMapping("/delete/batch")
    @RequiresPermissions("business:salaryparam:delete")
    public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
        String [] idArray = ids.split(",");
        List<Integer> idList = new ArrayList<>();
        for (String id : idArray) {
            idList.add(Integer.valueOf(id));
        }
        salaryParamService.deleteByIdInBatch(idList);
        return ApiResponse.success(null);
    }
    @ApiOperation("根据ID修改")
    @PostMapping("/updateById")
    @RequiresPermissions("business:salaryparam:update")
    public ApiResponse updateById(@RequestBody SalaryParam salaryParam) {
        salaryParamService.updateById(salaryParam);
        return ApiResponse.success(null);
    }
    @ApiOperation("分页查询")
    @PostMapping("/page")
    @RequiresPermissions("business:salaryparam:query")
    public ApiResponse<PageData<SalaryParam>> findPage (@RequestBody PageWrap<SalaryParam> pageWrap) {
        return ApiResponse.success(salaryParamService.findPage(pageWrap));
    }
    @ApiOperation("导出Excel")
    @PostMapping("/exportExcel")
    @RequiresPermissions("business:salaryparam:exportExcel")
    public void exportExcel (@RequestBody PageWrap<SalaryParam> pageWrap, HttpServletResponse response) {
        ExcelExporter.build(SalaryParam.class).export(salaryParamService.findPage(pageWrap).getRecords(), "设置类-绩效工资配置表", response);
    }
    @ApiOperation("根据ID查询")
    @GetMapping("/{id}")
    @RequiresPermissions("business:salaryparam:query")
    public ApiResponse findById(@PathVariable Integer id) {
        return ApiResponse.success(salaryParamService.findById(id));
    }
}
server/src/main/java/doumeemes/dao/business/SalaryParamMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
package doumeemes.dao.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import doumeemes.dao.business.model.SalaryParam;
/**
 * @author æ±Ÿè¹„蹄
 * @date 2023/08/11 15:29
 */
public interface SalaryParamMapper extends BaseMapper<SalaryParam> {
}
server/src/main/java/doumeemes/dao/business/model/SalaryParam.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,89 @@
package doumeemes.dao.business.model;
import doumeemes.core.annotation.excel.ExcelColumn;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
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 java.util.Date;
/**
 * è®¾ç½®ç±»-绩效工资配置表
 * @author æ±Ÿè¹„蹄
 * @date 2023/08/11 15:29
 */
@Data
@ApiModel("设置类-绩效工资配置表")
@TableName("`salary_param`")
public class SalaryParam {
    @ApiModelProperty(value = "主键", example = "1")
    @ExcelColumn(name="主键")
    private Integer id;
    @ApiModelProperty(value = "是否已删除 0未删除 1已删除", example = "1")
    @ExcelColumn(name="是否已删除 0未删除 1已删除")
    private Byte deleted;
    @ApiModelProperty(value = "创建人编码", example = "1")
    @ExcelColumn(name="创建人编码")
    private Integer createUser;
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;
    @ApiModelProperty(value = "更新人编码", example = "1")
    @ExcelColumn(name="更新人编码")
    private Integer updateUser;
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date updateTime;
    @ApiModelProperty(value = "备注")
    @ExcelColumn(name="备注")
    private String remark;
    @ApiModelProperty(value = "主组织编码(关联department表根组织)", example = "1")
    @ExcelColumn(name="主组织编码(关联department表根组织)")
    private Integer rootDepartId;
    @ApiModelProperty(value = "工厂编码(关联department表)", example = "1")
    @ExcelColumn(name="工厂编码(关联department表)")
    private Integer departId;
    @ApiModelProperty(value = "工序编码(关联procedure表)", example = "1")
    @ExcelColumn(name="工序编码(关联procedure表)")
    private Integer procedureId;
    @ApiModelProperty(value = "bom编码(关联bom表)", example = "1")
    @ExcelColumn(name="bom编码(关联bom表)")
    private Integer bomId;
    @ApiModelProperty(value = "工资单价(元)", example = "1")
    @ExcelColumn(name="工资单价(元)")
    private Integer salary;
    @ApiModelProperty(value = "标准数量", example = "1")
    @ExcelColumn(name="标准数量")
    private Integer num;
    @ApiModelProperty(value = "标准时长(秒)")
    @ExcelColumn(name="标准时长(秒)")
    private String times;
    @ApiModelProperty(value = "不良品是否计入 0否 1是", example = "1")
    @ExcelColumn(name="不良品是否计入 0否 1是")
    private Integer unqualified;
    @ApiModelProperty(value = "计价方式 0计件 1计时", example = "1")
    @ExcelColumn(name="计价方式 0计件 1计时")
    private Integer type;
}
server/src/main/java/doumeemes/dao/business/model/WorkPlans.java
@@ -65,6 +65,10 @@
    @Excel(name="计划日期",orderNum ="1",format = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date planDate;
    @ApiModelProperty(value = "计划开始日期")
    @Excel(name="计划开始日期",orderNum ="1",format = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startDate;
    @ApiModelProperty(value = "产品名称" )
    @TableField(exist = false)
server/src/main/java/doumeemes/dao/business/vo/WorkPlansVO.java
@@ -71,6 +71,10 @@
    @ExcelColumn(name="计划日期",index = 3,width =15)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date planDate;
    @ApiModelProperty(value = "计划开始日期")
    @ExcelColumn(name="计划开始日期",index = 3,width =15)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startDate;
    @ApiModelProperty(value = "物料编码(关联material_distribute表)", example = "1")
    private Integer materialId;
server/src/main/java/doumeemes/service/business/SalaryParamService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,97 @@
package doumeemes.service.business;
import doumeemes.core.model.PageData;
import doumeemes.core.model.PageWrap;
import doumeemes.dao.business.model.SalaryParam;
import java.util.List;
/**
 * è®¾ç½®ç±»-绩效工资配置表Service定义
 * @author æ±Ÿè¹„蹄
 * @date 2023/08/11 15:29
 */
public interface SalaryParamService {
    /**
     * åˆ›å»º
     *
     * @param salaryParam å®žä½“对象
     * @return Integer
     */
    Integer create(SalaryParam salaryParam);
    /**
     * ä¸»é”®åˆ é™¤
     *
     * @param id ä¸»é”®
     */
    void deleteById(Integer id);
    /**
     * åˆ é™¤
     *
     * @param salaryParam å®žä½“对象
     */
    void delete(SalaryParam salaryParam);
    /**
     * æ‰¹é‡ä¸»é”®åˆ é™¤
     *
     * @param ids ä¸»é”®é›†
     */
    void deleteByIdInBatch(List<Integer> ids);
    /**
     * ä¸»é”®æ›´æ–°
     *
     * @param salaryParam å®žä½“对象
     */
    void updateById(SalaryParam salaryParam);
    /**
     * æ‰¹é‡ä¸»é”®æ›´æ–°
     *
     * @param salaryParams å®žä½“集
     */
    void updateByIdInBatch(List<SalaryParam> salaryParams);
    /**
     * ä¸»é”®æŸ¥è¯¢
     *
     * @param id ä¸»é”®
     * @return SalaryParam
     */
    SalaryParam findById(Integer id);
    /**
     * æ¡ä»¶æŸ¥è¯¢å•条记录
     *
     * @param salaryParam å®žä½“对象
     * @return SalaryParam
     */
    SalaryParam findOne(SalaryParam salaryParam);
    /**
     * æ¡ä»¶æŸ¥è¯¢
     *
     * @param salaryParam å®žä½“对象
     * @return List<SalaryParam>
     */
    List<SalaryParam> findList(SalaryParam salaryParam);
    /**
     * åˆ†é¡µæŸ¥è¯¢
     *
     * @param pageWrap åˆ†é¡µå¯¹è±¡
     * @return PageData<SalaryParam>
     */
    PageData<SalaryParam> findPage(PageWrap<SalaryParam> pageWrap);
    /**
     * æ¡ä»¶ç»Ÿè®¡
     *
     * @param salaryParam å®žä½“对象
     * @return long
     */
    long count(SalaryParam salaryParam);
}
server/src/main/java/doumeemes/service/business/impl/SalaryParamServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,157 @@
package doumeemes.service.business.impl;
import doumeemes.core.model.PageData;
import doumeemes.core.model.PageWrap;
import doumeemes.core.utils.Utils;
import doumeemes.dao.business.SalaryParamMapper;
import doumeemes.dao.business.model.SalaryParam;
import doumeemes.service.business.SalaryParamService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
/**
 * è®¾ç½®ç±»-绩效工资配置表Service实现
 * @author æ±Ÿè¹„蹄
 * @date 2023/08/11 15:29
 */
@Service
public class SalaryParamServiceImpl implements SalaryParamService {
    @Autowired
    private SalaryParamMapper salaryParamMapper;
    @Override
    public Integer create(SalaryParam salaryParam) {
        salaryParamMapper.insert(salaryParam);
        return salaryParam.getId();
    }
    @Override
    public void deleteById(Integer id) {
        salaryParamMapper.deleteById(id);
    }
    @Override
    public void delete(SalaryParam salaryParam) {
        UpdateWrapper<SalaryParam> deleteWrapper = new UpdateWrapper<>(salaryParam);
        salaryParamMapper.delete(deleteWrapper);
    }
    @Override
    public void deleteByIdInBatch(List<Integer> ids) {
        if (CollectionUtils.isEmpty(ids)) {
            return;
        }
        salaryParamMapper.deleteBatchIds(ids);
    }
    @Override
    public void updateById(SalaryParam salaryParam) {
        salaryParamMapper.updateById(salaryParam);
    }
    @Override
    public void updateByIdInBatch(List<SalaryParam> salaryParams) {
        if (CollectionUtils.isEmpty(salaryParams)) {
            return;
        }
        for (SalaryParam salaryParam: salaryParams) {
            this.updateById(salaryParam);
        }
    }
    @Override
    public SalaryParam findById(Integer id) {
        return salaryParamMapper.selectById(id);
    }
    @Override
    public SalaryParam findOne(SalaryParam salaryParam) {
        QueryWrapper<SalaryParam> wrapper = new QueryWrapper<>(salaryParam);
        return salaryParamMapper.selectOne(wrapper);
    }
    @Override
    public List<SalaryParam> findList(SalaryParam salaryParam) {
        QueryWrapper<SalaryParam> wrapper = new QueryWrapper<>(salaryParam);
        return salaryParamMapper.selectList(wrapper);
    }
    @Override
    public PageData<SalaryParam> findPage(PageWrap<SalaryParam> pageWrap) {
        IPage<SalaryParam> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        QueryWrapper<SalaryParam> queryWrapper = new QueryWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().eq(SalaryParam::getId, pageWrap.getModel().getId());
        }
        if (pageWrap.getModel().getDeleted() != null) {
            queryWrapper.lambda().eq(SalaryParam::getDeleted, pageWrap.getModel().getDeleted());
        }
        if (pageWrap.getModel().getCreateUser() != null) {
            queryWrapper.lambda().eq(SalaryParam::getCreateUser, pageWrap.getModel().getCreateUser());
        }
        if (pageWrap.getModel().getCreateTime() != null) {
            queryWrapper.lambda().ge(SalaryParam::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime()));
            queryWrapper.lambda().le(SalaryParam::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime()));
        }
        if (pageWrap.getModel().getUpdateUser() != null) {
            queryWrapper.lambda().eq(SalaryParam::getUpdateUser, pageWrap.getModel().getUpdateUser());
        }
        if (pageWrap.getModel().getUpdateTime() != null) {
            queryWrapper.lambda().ge(SalaryParam::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime()));
            queryWrapper.lambda().le(SalaryParam::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime()));
        }
        if (pageWrap.getModel().getRemark() != null) {
            queryWrapper.lambda().eq(SalaryParam::getRemark, pageWrap.getModel().getRemark());
        }
        if (pageWrap.getModel().getRootDepartId() != null) {
            queryWrapper.lambda().eq(SalaryParam::getRootDepartId, pageWrap.getModel().getRootDepartId());
        }
        if (pageWrap.getModel().getDepartId() != null) {
            queryWrapper.lambda().eq(SalaryParam::getDepartId, pageWrap.getModel().getDepartId());
        }
        if (pageWrap.getModel().getProcedureId() != null) {
            queryWrapper.lambda().eq(SalaryParam::getProcedureId, pageWrap.getModel().getProcedureId());
        }
        if (pageWrap.getModel().getBomId() != null) {
            queryWrapper.lambda().eq(SalaryParam::getBomId, pageWrap.getModel().getBomId());
        }
        if (pageWrap.getModel().getSalary() != null) {
            queryWrapper.lambda().eq(SalaryParam::getSalary, pageWrap.getModel().getSalary());
        }
        if (pageWrap.getModel().getNum() != null) {
            queryWrapper.lambda().eq(SalaryParam::getNum, pageWrap.getModel().getNum());
        }
        if (pageWrap.getModel().getTimes() != null) {
            queryWrapper.lambda().eq(SalaryParam::getTimes, pageWrap.getModel().getTimes());
        }
        if (pageWrap.getModel().getUnqualified() != null) {
            queryWrapper.lambda().eq(SalaryParam::getUnqualified, pageWrap.getModel().getUnqualified());
        }
        if (pageWrap.getModel().getType() != null) {
            queryWrapper.lambda().eq(SalaryParam::getType, pageWrap.getModel().getType());
        }
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                queryWrapper.orderByDesc(sortData.getProperty());
            } else {
                queryWrapper.orderByAsc(sortData.getProperty());
            }
        }
        return PageData.from(salaryParamMapper.selectPage(page, queryWrapper));
    }
    @Override
    public long count(SalaryParam salaryParam) {
        QueryWrapper<SalaryParam> wrapper = new QueryWrapper<>(salaryParam);
        return salaryParamMapper.selectCount(wrapper);
    }
}
server/src/main/resources/mappers/WorkPlansExtMapper.xml
@@ -26,6 +26,7 @@
      `workPlans`.`ORIGIN`,
      `workPlans`.`PLAN_CODE`,
      `workPlans`.`PLAN_DATE`,
      `workPlans`.`START_DATE`,
      `workPlans`.`MATERIAL_ID`,
      `workPlans`.`UNIT_ID`,
      `workPlans`.`NUM`,
@@ -76,6 +77,9 @@
      <if test="planDate != null">
        AND `workPlans`.`PLAN_DATE` = #{planDate}
      </if>
      <if test="startDate != null">
        AND `workPlans`.`START_DATE` = #{startDate}
      </if>
      <if test="materialId != null">
        AND `workPlans`.`MATERIAL_ID` = #{materialId}
      </if>