Browse Source

供应商资质临期

huxy 4 months ago
parent
commit
2f4087ea57

+ 79 - 0
srm-module-code/src/main/java/com/cuidian/srm/cuspCode/controller/CuspSupplierProfileController.java

@@ -15,6 +15,7 @@ import javax.servlet.http.HttpServletResponse;
 
 import com.cuidian.srm.baseCode.service.ISerialPatternService;
 import com.cuidian.srm.cuspCode.entity.CuspCustomerProfile;
+import com.cuidian.srm.cuspCode.vo.CuspSupplierDeadlineReminderVo;
 import org.apache.commons.lang.StringUtils;
 import org.jeecg.modules.system.service.ISysUserService;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
@@ -104,6 +105,50 @@ public class CuspSupplierProfileController {
         return Result.OK(pageList);
     }
 
+    /**
+     * 分页列表查询-供应商资质临期
+     *
+     * @param cuspSupplierProfile
+     * @param pageNo
+     * @param pageSize
+     * @param req
+     * @return
+     */
+    //@AutoLog(value = "供应商档案-供应商资质临期")
+    @ApiOperation(value="供应商档案-供应商资质临期", notes="供应商档案-供应商资质临期")
+    @GetMapping(value = "/list2")
+    public Result<IPage<CuspSupplierDeadlineReminderVo>> queryPageList2(CuspSupplierDeadlineReminderVo cuspSupplierProfile,
+                                                                        @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+                                                                        @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+                                                                        HttpServletRequest req) {
+        // 自定义查询规则
+        Map<String, QueryRuleEnum> customeRuleMap = new HashMap<>();
+        // 自定义多选的查询规则为:LIKE_WITH_OR
+        customeRuleMap.put("paymentTerms", QueryRuleEnum.LIKE_WITH_OR);
+        customeRuleMap.put("country", QueryRuleEnum.LIKE_WITH_OR);
+        customeRuleMap.put("originalFactory", QueryRuleEnum.LIKE_WITH_OR);
+        customeRuleMap.put("deadlineReminder", QueryRuleEnum.GT);
+//		 customeRuleMap.put("DATEDIFF(valid_End,now())", QueryRuleEnum.GT);
+
+
+//		 QueryWrapper<CuspSupplierDeadlineReminderVo> queryWrapper =  new QueryWrapper<>();
+//
+//		 if (oConvertUtils.isNotEmpty(cuspSupplierProfile.getDeadlineReminder())){
+//			 queryWrapper.gt("DATEDIFF(valid_End,now())",cuspSupplierProfile.getDeadlineReminder());
+//		 }else{
+//			 queryWrapper.gt("DATEDIFF(valid_End,now())",30);
+//		 }
+
+
+//		 customeRuleMap.put("originalFactory", QueryRuleEnum.LIKE_WITH_OR);
+//		 customeRuleMap.put("temporarySupplier", QueryRuleEnum.LIKE_WITH_OR);
+//		 customeRuleMap.put("evaluationLevel", QueryRuleEnum.LIKE_WITH_OR);
+        QueryWrapper<CuspSupplierDeadlineReminderVo> queryWrapper = QueryGenerator.initQueryWrapper(cuspSupplierProfile, req.getParameterMap(),customeRuleMap);
+        Page<CuspSupplierDeadlineReminderVo> page = new Page<CuspSupplierDeadlineReminderVo>(pageNo, pageSize);
+        IPage<CuspSupplierDeadlineReminderVo> pageList = cuspSupplierProfileService.page2(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
     /**
      * 添加
      *
@@ -325,6 +370,40 @@ public class CuspSupplierProfileController {
         return mv;
     }
 
+
+    /**
+     * 导出excel
+     *
+     * @param request
+     * @param cuspSupplierProfile
+     */
+    @RequiresPermissions("cuspCode:cusp_supplier_profile:exportXls")
+    @RequestMapping(value = "/exportXls2")
+    public ModelAndView exportXls2(HttpServletRequest request, CuspSupplierDeadlineReminderVo cuspSupplierProfile) {
+        //获取用户信息
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        // Step.1 组装查询条件查询数据
+        Map<String, QueryRuleEnum> customeRuleMap = new HashMap<>();
+        // 自定义多选的查询规则为:LIKE_WITH_OR
+        customeRuleMap.put("paymentTerms", QueryRuleEnum.LIKE_WITH_OR);
+        customeRuleMap.put("country", QueryRuleEnum.LIKE_WITH_OR);
+        customeRuleMap.put("originalFactory", QueryRuleEnum.LIKE_WITH_OR);
+        customeRuleMap.put("deadlineReminder", QueryRuleEnum.GT);
+        QueryWrapper<CuspSupplierDeadlineReminderVo> queryWrapper = QueryGenerator.initQueryWrapper(cuspSupplierProfile, request.getParameterMap(),customeRuleMap);
+        Page<CuspSupplierDeadlineReminderVo> page = new Page<CuspSupplierDeadlineReminderVo>(1, 100000);
+        IPage<CuspSupplierDeadlineReminderVo> pageList2 = cuspSupplierProfileService.page2(page, queryWrapper);
+        //Step.2 获取导出数据
+        List<CuspSupplierDeadlineReminderVo> pageList =pageList2.getRecords();
+        // Step.3 AutoPoi 导出Excel
+        ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+        mv.addObject(NormalExcelConstants.FILE_NAME, "供应商资质临期");
+        mv.addObject(NormalExcelConstants.CLASS, CuspSupplierDeadlineReminderVo.class);
+        mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("供应商资质临期", "导出人:"+sysUser.getRealname(), "供应商资质临期"));
+        mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
+        return mv;
+    }
+
+
     /**
      * 通过excel导入数据
      *

+ 5 - 0
srm-module-code/src/main/java/com/cuidian/srm/cuspCode/mapper/CuspSupplierProfileMapper.java

@@ -2,6 +2,10 @@ package com.cuidian.srm.cuspCode.mapper;
 
 import java.util.List;
 
+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.cuidian.srm.cuspCode.vo.CuspSupplierDeadlineReminderVo;
 import org.apache.ibatis.annotations.Param;
 import com.cuidian.srm.cuspCode.entity.CuspSupplierProfile;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -14,4 +18,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface CuspSupplierProfileMapper extends BaseMapper<CuspSupplierProfile> {
 
+    IPage<CuspSupplierDeadlineReminderVo> page2(Page<CuspSupplierDeadlineReminderVo> page,@Param("ew")  QueryWrapper<CuspSupplierDeadlineReminderVo> queryWrapper);
 }

+ 14 - 0
srm-module-code/src/main/java/com/cuidian/srm/cuspCode/mapper/xml/CuspSupplierProfileMapper.xml

@@ -2,4 +2,18 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.cuidian.srm.cuspCode.mapper.CuspSupplierProfileMapper">
 
+    <select id="page2"  resultType="com.cuidian.srm.cuspCode.vo.CuspSupplierDeadlineReminderVo">
+       select * from (
+        select
+        code,name,abbreviation,duty_paragraph,contacts,
+        phone,country,payment_Terms,original_Factory,
+        qualification_Certificate_Name,valid_Begin,
+        valid_End,
+        IF(DATEDIFF(valid_End,now())>=0, DATEDIFF(valid_End,now()), '超期') as deadlineReminder
+        from cusp_supplier_profile_qualification a
+        left join cusp_supplier_profile b
+        on a.head_Id=b.id
+        ) a
+        ${ew.customSqlSegment}
+    </select>
 </mapper>

+ 6 - 0
srm-module-code/src/main/java/com/cuidian/srm/cuspCode/service/ICuspSupplierProfileService.java

@@ -1,9 +1,13 @@
 package com.cuidian.srm.cuspCode.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.cuidian.srm.cuspCode.entity.CuspSupplierProfileMan;
 import com.cuidian.srm.cuspCode.entity.CuspSupplierProfileQualification;
 import com.cuidian.srm.cuspCode.entity.CuspSupplierProfile;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.cuidian.srm.cuspCode.vo.CuspSupplierDeadlineReminderVo;
 import org.jeecg.common.api.vo.Result;
 
 import java.io.Serializable;
@@ -65,6 +69,8 @@ public interface ICuspSupplierProfileService extends IService<CuspSupplierProfil
 	 */
 	public Result<String> approveTemp (Collection<? extends Serializable> idList);
 
+    IPage<CuspSupplierDeadlineReminderVo> page2(Page<CuspSupplierDeadlineReminderVo> page, QueryWrapper<CuspSupplierDeadlineReminderVo> queryWrapper);
+
 //	/**
 //	 * 通过ids审核拒绝
 //	 *

+ 9 - 0
srm-module-code/src/main/java/com/cuidian/srm/cuspCode/service/impl/CuspSupplierProfileServiceImpl.java

@@ -1,5 +1,8 @@
 package com.cuidian.srm.cuspCode.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.cuidian.srm.cuspCode.entity.CuspSupplierProfile;
 import com.cuidian.srm.cuspCode.entity.CuspSupplierProfileMan;
 import com.cuidian.srm.cuspCode.entity.CuspSupplierProfileQualification;
@@ -7,6 +10,7 @@ import com.cuidian.srm.cuspCode.mapper.CuspSupplierProfileManMapper;
 import com.cuidian.srm.cuspCode.mapper.CuspSupplierProfileQualificationMapper;
 import com.cuidian.srm.cuspCode.mapper.CuspSupplierProfileMapper;
 import com.cuidian.srm.cuspCode.service.ICuspSupplierProfileService;
+import com.cuidian.srm.cuspCode.vo.CuspSupplierDeadlineReminderVo;
 import io.micrometer.core.instrument.util.StringUtils;
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
@@ -236,6 +240,11 @@ public class CuspSupplierProfileServiceImpl extends ServiceImpl<CuspSupplierProf
 
 	}
 
+	@Override
+	public IPage<CuspSupplierDeadlineReminderVo> page2(Page<CuspSupplierDeadlineReminderVo> page, QueryWrapper<CuspSupplierDeadlineReminderVo> queryWrapper) {
+		return cuspSupplierProfileMapper.page2(page,queryWrapper);
+	}
+
 	public static int getCharIndex(String[] array, String target) {
 		for (int i = 0; i < array.length; i++) {
 			if (array[i] == target) {

+ 75 - 0
srm-module-code/src/main/java/com/cuidian/srm/cuspCode/vo/CuspSupplierDeadlineReminderVo.java

@@ -0,0 +1,75 @@
+package com.cuidian.srm.cuspCode.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+@ApiModel(value="CuspSupplierDeadlineReminderVo", description="供应商档案-供应商资质临期")
+@Data
+public class CuspSupplierDeadlineReminderVo {
+    /**编码*/
+    @Excel(name = "编码(code)", width = 15)
+    @ApiModelProperty(value = "编码")
+    private String code;
+    /**名称*/
+    @Excel(name = "名称(name)", width = 15)
+    @ApiModelProperty(value = "名称")
+    private String name;
+    /**简称*/
+    @Excel(name = "简称(abbreviation)", width = 15)
+    @ApiModelProperty(value = "简称")
+    private String abbreviation;
+    /**税号*/
+    @Excel(name = "税号(duty paragraph)", width = 15)
+    @ApiModelProperty(value = "税号")
+    private String dutyParagraph;
+    /**联系人*/
+    @Excel(name = "联系人(contacts)", width = 15)
+    @ApiModelProperty(value = "联系人")
+    private String contacts;
+    /**联系电话*/
+    @Excel(name = "联系电话(phone)", width = 15)
+    @ApiModelProperty(value = "联系电话")
+    private String phone;
+    /**国家*/
+    @Excel(name = "国家(country)", width = 15)
+    @ApiModelProperty(value = "国家")
+    private String country;
+    /**付款条件*/
+    @Excel(name = "付款条件(payment terms)", width = 15)
+    @ApiModelProperty(value = "付款条件")
+    private String paymentTerms;
+    /**原厂*/
+    @Excel(name = "原厂(original factory)", width = 15)
+    @ApiModelProperty(value = "原厂")
+    private Integer originalFactory;
+    /**资质证书名称*/
+      @Excel(name = "资质证书名称", width = 15)
+    @ApiModelProperty(value = "资质证书名称")
+    private String qualificationCertificateName;
+    /**有效期始*/
+      @Excel(name = "有效期始valid begin)", width = 20, format = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "有效期始")
+    private Date validBegin;
+    /**有效期止*/
+      @Excel(name = "有效期止(valid end)", width = 20, format = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "有效期止")
+    private Date validEnd;
+    /**临期提醒*/
+      @Excel(name = "临期提醒(deadline days)", width = 15)
+    @ApiModelProperty(value = "临期提醒")
+    @TableField(exist = false)
+    private String deadlineReminder;
+
+
+}