diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSupplierController.java b/ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSupplierController.java index c761e6ba..40aeeee8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSupplierController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSupplierController.java @@ -14,10 +14,10 @@ import com.ruoyi.common.core.domain.entity.SysDictData; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.ShiroUtils; import com.ruoyi.process.general.service.IProcessService; -import com.ruoyi.system.domain.SysSalesOrderVo; -import com.ruoyi.system.domain.SysSupplier; +import com.ruoyi.system.domain.*; import com.ruoyi.system.domain.Vo.SysSupplierVo; import com.ruoyi.system.domain.exportDto.SysSupplierDto; import com.ruoyi.system.service.ISysDictTypeService; @@ -26,16 +26,23 @@ import com.ruoyi.system.service.ISysSupplierService; import com.ruoyi.system.service.ISysUserService; import org.activiti.engine.RuntimeService; import org.activiti.engine.TaskService; +import org.activiti.engine.runtime.ProcessInstance; +import org.activiti.engine.task.Task; +import org.apache.commons.lang3.BooleanUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.apache.shiro.authz.annotation.RequiresRoles; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; import java.io.IOException; import java.net.URLEncoder; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; @@ -97,23 +104,17 @@ public class SysSupplierController extends BaseController Set roleKeys = roleService.selectRoleKeys(userId); List sysUserlist = sysUserService.selectRoleToUserList("cgyRole"); sysUserlist.add(curUser); - if (curUser.getUserName().contains("admin")) { - SysSupplier sysSupplier2 = new SysSupplier(); - startPage(); - List list2 = sysSupplierService.selectSysSupplierList(sysSupplier2); - return getDataTable(list2); - } //如果主管审批,查看当前自己部门的审核 //如果经理审计需要查询自己部门下所有业务员的提交的订单,以及自身的提交的订单 - if (roleKeys.contains("cgyRole")) { - List findUser = sysUserlist.stream().filter(item -> (item.getDeptId().equals(curUser.getDeptId()))).collect(Collectors.toList()); - Set user = findUser.stream().map(SysUser::getLoginName).collect(Collectors.toSet()); - startPage(); - List list2 = list.stream().filter(item -> user.contains(item.getCreateBy())).collect(Collectors.toList()); - return getDataTable(list2); - } +// if (roleKeys.contains("cgjlRole")) { +// List findUser = sysUserlist.stream().filter(item -> (item.getDeptId().equals(curUser.getDeptId()))).collect(Collectors.toList()); +// Set user = findUser.stream().map(SysUser::getLoginName).collect(Collectors.toSet()); +// startPage(); +// List list2 = list.stream().filter(item -> user.contains(item.getCreateBy())).collect(Collectors.toList()); +// return getDataTable(list2); +// } // 业务员角色只能看到自己创建的数据 - if (roleKeys.contains("cgjlRole")) { + if (roleKeys.contains("cgyRole")) { sysSupplier.setCreateBy(curUser.getLoginName()); startPage(); List list2 = sysSupplierService.selectSysSupplierList(sysSupplier); @@ -157,7 +158,10 @@ public class SysSupplierController extends BaseController @ResponseBody public AjaxResult addSave(SysSupplier sysSupplier) { - return toAjax(sysSupplierService.insertSysSupplier(sysSupplier)); + sysSupplier.setAuditStatus("0"); + sysSupplier.setUseStatus("0"); + sysSupplierService.submitApply(sysSupplier); + return AjaxResult.success(); } /** @@ -188,7 +192,10 @@ public class SysSupplierController extends BaseController @ResponseBody public AjaxResult editSave(SysSupplier sysSupplier) { - return toAjax(sysSupplierService.updateSysSupplier(sysSupplier)); + sysSupplier.setAuditStatus("0"); + sysSupplier.setUseStatus("0"); + sysSupplierService.submitApply(sysSupplier); + return AjaxResult.success(); } /** @@ -287,4 +294,79 @@ public class SysSupplierController extends BaseController List list = sysSupplierService.getSupplierCodes(); return list; } + /** + * 加载审批弹窗 + * @param taskId + * @param mmap + * @return + */ + @GetMapping("/showVerifyDialog/{taskId}") + public String showVerifyDialog(@PathVariable("taskId") String taskId, ModelMap mmap) { + Task task = taskService.createTaskQuery().taskId(taskId).singleResult(); + String processInstanceId = task.getProcessInstanceId(); + ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult(); + SysSupplierVo sysSupplierVo = sysSupplierService.selectSysSupplierById(new Long(processInstance.getBusinessKey())); + sysSupplierVo.setTaskId(taskId); + mmap.put("formData", sysSupplierVo); + mmap.put("taskId", taskId); + String verifyName = task.getTaskDefinitionKey().substring(0, 1).toUpperCase() + task.getTaskDefinitionKey().substring(1); + return prefix + "/task" + verifyName; + } + + /** + * 完成任务 + * + * @return + */ + @RequestMapping(value = "/complete/{taskId}", method = {RequestMethod.POST, RequestMethod.GET}) + @ResponseBody + public AjaxResult complete(@PathVariable("taskId") String taskId, @RequestParam(value = "saveEntity", required = false) String saveEntity, + @ModelAttribute("preloadObj") SysSupplierVo sysSupplierVo, HttpServletRequest request) { + boolean saveEntityBoolean = BooleanUtils.toBoolean(saveEntity); + String instanceId = sysSupplierVo.getInstanceId(); + String instanceType = sysSupplierVo.getInstanceType(); + boolean approvedFlag = processService.complete(taskId, instanceId, sysSupplierVo.getApplyTitle(), + sysSupplierVo.getSupplierCode(), "supplier", new HashMap(), request); + SysUser sysUser = ShiroUtils.getSysUser(); + if(!approvedFlag){ + // 审核状态-审核拒绝 + sysSupplierVo.setAuditStatus("2"); + } + // 如果任务已结束更新业务表状态 + boolean processIsFinish = processService.judgeProcessIsFinish(instanceId); + if (processIsFinish) { + // 审核通过 + sysSupplierVo.setAuditStatus("1"); + // 提交 + if("submit".equals(instanceType)){ + // 使用状态-是 + sysSupplierVo.setUseStatus("1"); + } + // 作废 + else if("cancel".equals(instanceType)){ + // 使用状态-已作废 + sysSupplierVo.setUseStatus("2"); + } + // 恢复 + else if("restore".equals(instanceType)){ + // 使用状态-是 + sysSupplierVo.setUseStatus("1"); + } + sysSupplierVo.setUseStatus("1"); + } + sysSupplierService.updateSysSupplier(sysSupplierVo); + // 驳回申请后继续申请,可能修改表单 + if (saveEntityBoolean) { + sysSupplierService.updateSysSupplierById(sysSupplierVo); + return success("重新申请"); + } + return success("任务已完成"); + } + @ModelAttribute("/preloadObj") + public SysSupplierVo getObj(@RequestParam(value = "id", required = false) Long id, HttpSession session) { + if (id != null) { + return sysSupplierService.selectSysSupplierById(id); + } + return new SysSupplierVo(); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSupplier.java b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSupplier.java index 85b38865..7cff5f38 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSupplier.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSupplier.java @@ -192,6 +192,17 @@ public class SysSupplier extends BaseEntity private String delFlag; + private String keyword; + + + public String getKeyword() { + return keyword; + } + + public void setKeyword(String keyword) { + this.keyword = keyword; + } + public String getDelFlag() { return delFlag; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/SysSupplierVo.java b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/SysSupplierVo.java index ef5cc156..4ae7b39f 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/SysSupplierVo.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/domain/Vo/SysSupplierVo.java @@ -29,10 +29,6 @@ public class SysSupplierVo extends SysSupplier { /** 流程实例类型名称 */ private String instanceTypeName; - /** - * 关键词 - */ - private String keyword; public String getApplyUserName() { return applyUserName; @@ -98,13 +94,6 @@ public class SysSupplierVo extends SysSupplier { this.instanceTypeName = instanceTypeName; } - public String getKeyword() { - return keyword; - } - - public void setKeyword(String keyword) { - this.keyword = keyword; - } @Override public String toString() { @@ -117,7 +106,6 @@ public class SysSupplierVo extends SysSupplier { ", suspendState='" + suspendState + '\'' + ", todoUserId='" + todoUserId + '\'' + ", instanceTypeName='" + instanceTypeName + '\'' + - ", keyword='" + keyword + '\'' + super.toString() + "} " ; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSupplierMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSupplierMapper.java index c9913350..a8116d23 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSupplierMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSupplierMapper.java @@ -85,4 +85,6 @@ public interface SysSupplierMapper Integer updateSysSupplierBySupplierCode(String delFlag,String sysSupplierCode); Integer updateSysSupplierBySupplierCodes(String delFlag,SysSupplier[] sysSupplierCodes); + + SysSupplierVo cancelSysSupplierById(Long id); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSupplierServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSupplierServiceImpl.java index 4fa6c71e..a0970f23 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSupplierServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSupplierServiceImpl.java @@ -1,23 +1,34 @@ package com.ruoyi.system.service.impl; +import com.github.pagehelper.Page; +import com.ruoyi.common.core.domain.entity.SysUser; +import com.ruoyi.common.core.page.PageDomain; +import com.ruoyi.common.core.page.TableSupport; import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.core.text.Convert; import com.ruoyi.common.service.ICommonService; +import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.ShiroUtils; import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.process.general.service.IProcessService; +import com.ruoyi.process.todoitem.mapper.BizTodoItemMapper; import com.ruoyi.system.domain.SysAttach; import com.ruoyi.system.domain.SysSupplier; import com.ruoyi.system.domain.Vo.SysSupplierVo; import com.ruoyi.system.mapper.SysSupplierMapper; -import com.ruoyi.system.service.ISysAttachFileService; -import com.ruoyi.system.service.ISysAttachService; -import com.ruoyi.system.service.ISysSupplierService; +import com.ruoyi.system.mapper.SysUserMapper; +import com.ruoyi.system.service.*; +import org.activiti.engine.TaskService; +import org.activiti.engine.impl.persistence.entity.TaskEntityImpl; +import org.activiti.engine.runtime.ProcessInstance; +import org.activiti.engine.task.Task; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; /** * 供应商资料Service业务层处理 @@ -26,8 +37,8 @@ import java.util.List; * @date 2022-11-02 */ @Service("supplierItems") -public class SysSupplierServiceImpl implements ISysSupplierService -{ +public class SysSupplierServiceImpl implements ISysSupplierService{ + @Autowired private SysSupplierMapper sysSupplierMapper; @@ -42,10 +53,23 @@ public class SysSupplierServiceImpl implements ISysSupplierService @Autowired private ICommonService commonService; + @Autowired + private SysUserMapper userMapper; + + @Autowired + private TaskService taskService; + + @Autowired + private BizTodoItemMapper todoItemMapper; + + @Autowired + private IProcessService processService; + @Autowired + private ISysRoleService roleService; /** * 查询供应商资料 - * + * * @param supplierId 供应商资料ID * @return 供应商资料 */ @@ -64,24 +88,100 @@ public class SysSupplierServiceImpl implements ISysSupplierService @Override public List selectSysSupplierList(SysSupplier sysSupplier) { - return sysSupplierMapper.selectSysSupplierList(sysSupplier); + PageDomain pageDomain = TableSupport.buildPageRequest(); + Integer pageNum = pageDomain.getPageNum(); + Integer pageSize = pageDomain.getPageSize(); + Page list = (Page) sysSupplierMapper.selectSysSupplierList(sysSupplier); + Page returnList = new Page<>(); + //PageHelper 仅对第一List分页有效 + for(SysSupplierVo sysSupplierVo : list){ + SysUser sysUser = userMapper.selectUserByLoginName(sysSupplierVo.getCreateBy()); + if (sysUser != null) { + sysSupplierVo.setCreateBy(sysUser.getUserName()); + } + SysUser sysUser2 = userMapper.selectUserByLoginName(sysSupplierVo.getApplyUser()); + if (sysUser2!=null){ + sysSupplierVo.setApplyUserName(sysUser2.getUserName()); + } + String instanceId = sysSupplierVo.getInstanceId(); + // 当前环节 + if (StringUtils.isNotBlank(instanceId)) { + List taskList = taskService.createTaskQuery() + .processInstanceId(instanceId) +// .singleResult(); + .list(); // 例如请假会签,会同时拥有多个任务 + if (!CollectionUtils.isEmpty(taskList)) { + TaskEntityImpl task = (TaskEntityImpl) taskList.get(0); + String taskId = task.getId(); + sysSupplierVo.setTaskId(taskId); + // 设置待办用户 + List todoUserList = todoItemMapper.selectUndealTodoUserList(taskId); + if(!CollectionUtils.isEmpty(taskList)){ + sysSupplierVo.setTodoUserId(String.join(",",todoUserList)); + } + if (task.getSuspensionState() == 2) { + sysSupplierVo.setTaskName("已挂起"); + sysSupplierVo.setSuspendState("2"); + } else { + sysSupplierVo.setTaskName(task.getName()); + sysSupplierVo.setSuspendState("1"); + } + } else { + // 已办结或者已撤销 + sysSupplierVo.setTaskName("已结束"); + } + } else { + sysSupplierVo.setTaskName("未启动"); + } + returnList.add(sysSupplierVo); + } + returnList.setTotal(CollectionUtils.isEmpty(list) ? 0 : list.getTotal()); + returnList.setPageNum(pageNum); + returnList.setPageSize(pageSize); + return returnList; } /** * 新增供应商资料 - * + * * @param sysSupplier 供应商资料 * @return 结果 */ @Override public int insertSysSupplier(SysSupplier sysSupplier) { + String loginName = ShiroUtils.getLoginName(); + Long id = sysSupplier.getSupplierId(); + String fileIdStr = sysSupplier.getFileIdStr(); + Long photoAttachId = sysSupplier.getPhotoAttachId(); + String removeFileIdStr = sysSupplier.getRemoveFileIdStr(); + sysSupplier.setCreateBy(loginName); + sysSupplier.setPurchaseBuyer(loginName); + sysSupplier.setCreateTime(DateUtils.getNowDate()); + if(StringUtils.isNotBlank(removeFileIdStr)){ + List removeFileIdList = Arrays.asList(removeFileIdStr.split(";")); + commonService.deleteByIds(removeFileIdList); + } + if(StringUtils.isNotBlank(fileIdStr)) { + List fileIdList = Arrays.asList(fileIdStr.split(";")); + if (photoAttachId == null) { + SysAttach attach = new SysAttach(); + attach.setCreateBy(loginName); + attach.setCreateTime(new Date()); + attach.setSourceType("erpMaterial"); + attach.setSourceSubType("photo"); + attach.setRelId(id); + attachService.insertSysAttach(attach); + photoAttachId = attach.getId(); + } + attachFileService.updateAttachIdByIdList(photoAttachId, fileIdList); + } return sysSupplierMapper.insertSysSupplier(sysSupplier); } /** * 修改供应商资料 - * + * * @param sysSupplier 供应商资料 * @return 结果 */ @@ -93,6 +193,7 @@ public class SysSupplierServiceImpl implements ISysSupplierService String fileIdStr = sysSupplier.getFileIdStr(); Long photoAttachId = sysSupplier.getPhotoAttachId(); String removeFileIdStr = sysSupplier.getRemoveFileIdStr(); + sysSupplier.setUpdateBy(loginName); sysSupplier.setUpdateTime(new Date()); if(StringUtils.isNotBlank(removeFileIdStr)){ List removeFileIdList = Arrays.asList(removeFileIdStr.split(";")); @@ -118,7 +219,7 @@ public class SysSupplierServiceImpl implements ISysSupplierService /** * 删除供应商资料对象 - * + * * @param ids 需要删除的数据ID * @return 结果 */ @@ -130,7 +231,7 @@ public class SysSupplierServiceImpl implements ISysSupplierService /** * 删除供应商资料信息 - * + * * @param supplierId 供应商资料ID * @return 结果 */ @@ -180,9 +281,149 @@ public class SysSupplierServiceImpl implements ISysSupplierService * */ @Override public List getSupplierCodes() { - List list = sysSupplierMapper.getSupplierCodes(); return list; } + @Override + @Transactional(rollbackFor = Exception.class) + public ProcessInstance updateSysSupplierById(SysSupplierVo sysSupplierVo) { + // 审核状态-待审核 + sysSupplierVo.setAuditStatus("0"); + SysUser user = ShiroUtils.getSysUser(); + // 启动流程 + String applyTitle = user.getUserName()+"发起了客户信息重新申请审批-"+ DateUtils.dateTimeNow(); + String instanceType = "submit"; + SysSupplier sysSupplier = new SysSupplier(); + BeanUtils.copyProperties(sysSupplierVo,sysSupplier); + ProcessInstance processInstance = startProcessInstance(applyTitle,instanceType,sysSupplier, user); + String processInstanceId = processInstance.getProcessInstanceId(); + // 作废实例id + sysSupplier.setCancelInstanceId(processInstanceId); + // 存在提交完就流程结束的情况 + boolean processIsFinish = processService.judgeProcessIsFinish(processInstanceId); + if(processIsFinish){ + // 审核状态- + sysSupplier.setAuditStatus("1"); + // 使用状态-已作废 + sysSupplier.setUseStatus("1"); + } + sysSupplierMapper.updateSysSupplier(sysSupplier); + return processInstance; + } + @Override + @Transactional(rollbackFor = Exception.class) + public ProcessInstance cancelSysSupplierById(Long id) { + SysSupplierVo sysSupplierVo = sysSupplierMapper.cancelSysSupplierById(id); + // 审核状态-待审核 + sysSupplierVo.setAuditStatus("0"); + SysUser user = ShiroUtils.getSysUser(); + // 启动流程 + String applyTitle = user.getUserName()+"发起了客户信息作废审批-"+ DateUtils.dateTimeNow(); + String instanceType = "cancel"; + SysSupplier sysSupplier = new SysSupplier(); + BeanUtils.copyProperties(sysSupplierVo,sysSupplier); + ProcessInstance processInstance = startProcessInstance(applyTitle,instanceType,sysSupplier, user); + String processInstanceId = processInstance.getProcessInstanceId(); + // 作废实例id + sysSupplier.setCancelInstanceId(processInstanceId); + // 存在提交完就流程结束的情况 + boolean processIsFinish = processService.judgeProcessIsFinish(processInstanceId); + if(processIsFinish){ + // 审核状态-审核通过 + sysSupplier.setAuditStatus("1"); + // 使用状态-已作废 + sysSupplier.setUseStatus("2"); + } + sysSupplierMapper.updateSysSupplier(sysSupplier); + return processInstance; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public ProcessInstance restoreSysSupplierById(Long id) { + SysSupplierVo sysSupplierVo = sysSupplierMapper.selectSysSupplierById(id); + // 审核状态-待审核 + sysSupplierVo.setAuditStatus("0"); + SysUser user = ShiroUtils.getSysUser(); + // 启动流程 + String applyTitle = user.getUserName()+"发起了客户恢复审批-"+DateUtils.dateTimeNow(); + String instanceType = "restore"; + SysSupplier sysSupplier = new SysSupplier(); + BeanUtils.copyProperties(sysSupplierVo,sysSupplier); + ProcessInstance processInstance = startProcessInstance(applyTitle,instanceType,sysSupplier, user); + String processInstanceId = processInstance.getProcessInstanceId(); + // 恢复实例id + sysSupplier.setRestoreInstanceId(processInstanceId); + // 存在提交完就流程结束的情况 + boolean processIsFinish = processService.judgeProcessIsFinish(processInstanceId); + if(processIsFinish){ + // 审核状态-审核通过 + sysSupplier.setAuditStatus("1"); + // 使用状态-是 + sysSupplier.setUseStatus("1"); + } + sysSupplierMapper.updateSysSupplier(sysSupplier); + return processInstance; + } + + /** + * 提交申请 + * @param sysSupplier + * @return + */ + @Override + @Transactional(rollbackFor = Exception.class) + public ProcessInstance submitApply(SysSupplier sysSupplier) { + SysUser user = ShiroUtils.getSysUser(); + sysSupplier.setApplyUser(user.getLoginName()); + sysSupplier.setApplyTime(DateUtils.getNowDate()); + insertSysSupplier(sysSupplier); + // 启动流程 + String applyTitle = user.getUserName()+"发起了客户信息提交审批-"+DateUtils.dateTimeNow(); + String instanceType = "submit"; + ProcessInstance processInstance = startProcessInstance(applyTitle,instanceType,sysSupplier, user); + String processInstanceId = processInstance.getProcessInstanceId(); + // 提交实例id + sysSupplier.setSubmitInstanceId(processInstanceId); + // 存在提交完就流程结束的情况 + boolean processIsFinish = processService.judgeProcessIsFinish(processInstanceId); + if(processIsFinish){ + // 审核状态-审核通过 + sysSupplier.setAuditStatus("1"); + // 使用状态-是 + sysSupplier.setUseStatus("1"); + } + sysSupplierMapper.updateSysSupplier(sysSupplier); + return processInstance; + } + + + private ProcessInstance startProcessInstance(String applyTitle, String instanceType, SysSupplier sysSupplier, SysUser user) { + Long customerId = sysSupplier.getSupplierId(); + String businessKey = customerId.toString(); // 实体类 ID,作为流程的业务 key + String key = "supplier"; + Map variables = new HashMap<>(); + // 构造authority传参 + buildAuthority(user, variables); + sysSupplier.setApplyTitle(applyTitle); + // 启动流程 + ProcessInstance processInstance = processService.submitApply(user.getLoginName(), businessKey, applyTitle, + sysSupplier.getSupplierCode(), key, variables); + String processInstanceId = processInstance.getId(); + sysSupplier.setInstanceId(processInstanceId); // 建立双向关系 + sysSupplier.setInstanceType(instanceType); + return processInstance; + } + + private void buildAuthority(SysUser user, Map variables) { + Set roleKeys = roleService.selectRoleKeys(user.getUserId()); + if(roleKeys.contains("cgyRole")){ + variables.put("authority",1); + } + // 角色不同审核人不同 + if(roleKeys.contains("admin")){ + variables.put("authority",4); + } + } } diff --git a/ruoyi-admin/src/main/resources/mapper/system/SysCustomerMapper.xml b/ruoyi-admin/src/main/resources/mapper/system/SysCustomerMapper.xml index 42dd93bc..907b0053 100644 --- a/ruoyi-admin/src/main/resources/mapper/system/SysCustomerMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/system/SysCustomerMapper.xml @@ -103,6 +103,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ) as p on s.instance_type = p.dict_value + and s.id = #{id} and s.export_sales = #{exportSales} and s.audit_status = #{auditStatus} and s.use_status = #{useStatus} diff --git a/ruoyi-admin/src/main/resources/mapper/system/SysCustomerQuoteMapper.xml b/ruoyi-admin/src/main/resources/mapper/system/SysCustomerQuoteMapper.xml index 737fa4cf..88ed9b20 100644 --- a/ruoyi-admin/src/main/resources/mapper/system/SysCustomerQuoteMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/system/SysCustomerQuoteMapper.xml @@ -43,14 +43,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + select id,supplierCode,customerCode,customerName,pricingDate,enterprise,enterpriseSum,common_currency, confirm_fax,rmbTax,usdTax,noRmb,noRmbSum,rmb,rmbSum,noUsd,noUsdSum,usd,usdSum,business_members, - degin_flag,del_flag,create_by,create_time,update_by,update_time,remark, - audit_status,use_status,instance_id,instance_type, - submit_instance_id,cancel_instance_id,restore_instance_id,apply_time,apply_user,apply_title + degin_flag,del_flag,create_by,create_time,update_by,update_time,remark,audit_status,use_status, + instance_id,instance_type,submit_instance_id,cancel_instance_id,restore_instance_id,apply_title,apply_user,apply_time,del_flag from sys_customer_quote @@ -89,6 +89,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and s.create_time between #{params.beginCreateTime} and #{params.endCreateTime} + and ((s.customerCode like concat('%',#{keyword},'%') or s.customerName like concat('%',#{keyword},'%')) order by s.create_time desc @@ -143,6 +144,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" use_status, audit_status, create_time, + del_flag #{supplierCode}, @@ -179,6 +181,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{useStatus}, #{auditStatus}, #{createTime}, + #{delFlag} @@ -218,6 +221,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" apply_user = #{applyUser}, apply_time = #{applyTime}, update_time = #{updateTime}, + del_flag = #{delFlag} where id = #{id} diff --git a/ruoyi-admin/src/main/resources/mapper/system/SysSupplierMapper.xml b/ruoyi-admin/src/main/resources/mapper/system/SysSupplierMapper.xml index e5b27937..ae3a72f4 100644 --- a/ruoyi-admin/src/main/resources/mapper/system/SysSupplierMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/system/SysSupplierMapper.xml @@ -85,20 +85,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" sup.settlement_bank, sup.exchange_settlement_account, sup.deposit_bank, sup.bank_account, sup.rmb_registered_capital, sup.Industry_code, sup.merchandiser, sup.merchandiser_telephone, sup.financial_contact, sup.confirm_tax, sup.tax_rate, sup.first_add_time, sup.update_info_time, - sup.photo_attach_id, sup.create_by, sup.create_time, sup.update_by, sup.update_time, sup.remark,sup.del_flag, + sup.create_by, sup.create_time, sup.update_by, sup.update_time, sup.remark,sup.del_flag, sup.instance_type, sup.instance_id, sup.restore_instance_id, sup.cancel_instance_id, sup.submit_instance_id, sup.apply_title, sup.apply_user, sup.apply_time,p.dict_value as instance_type_name,file.url as photo_url from sys_supplier as sup left join( select dict_value,dict_label from sys_dict_data where dict_type = 'processType' - ) as p on sup.instance_type = p.dict_value - left join ( - select att.rel_id,file.url,min(file.create_time) as create_time - from sys_attach as att left join sys_attach_file as file on att.id = file.attach_id - where att.source_type = 'supplier' and att.source_sub_type = 'photo' - group by att.rel_id - ) as file on sup.supplier_id = file.rel_id + ) as p + on sup.instance_type = p.dict_value + left join ( + select att.rel_id,file.url,min(file.create_time) as create_time + from sys_attach as att + left join sys_attach_file as file + on att.id = file.attach_id + where att.source_type = 'supplier' and att.source_sub_type = 'photo' + group by att.rel_id + ) as file + on sup.supplier_id = file.rel_id and sup.supplier_code like concat('%', #{supplierCode}, '%') and sup.supplier_name like concat('%', #{supplierName}, '%') @@ -123,7 +127,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and ((sup.supplierCode like concat('%',#{keyword},'%') or sup.suppplierName like concat('%',#{keyword},'%')) - order by sup.create_time,sup.supplier_id desc + order by sup.create_time desc +
diff --git a/ruoyi-admin/src/main/resources/templates/system/supplier/detail.html b/ruoyi-admin/src/main/resources/templates/system/supplier/detail.html index 3285ef2e..96be6ed1 100644 --- a/ruoyi-admin/src/main/resources/templates/system/supplier/detail.html +++ b/ruoyi-admin/src/main/resources/templates/system/supplier/detail.html @@ -2,10 +2,12 @@ + +
-
+
@@ -263,7 +265,60 @@ + + + + + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/system/supplier/taskCgzgVerify.html b/ruoyi-admin/src/main/resources/templates/system/supplier/taskCgzgVerify.html new file mode 100644 index 00000000..26d2d4fd --- /dev/null +++ b/ruoyi-admin/src/main/resources/templates/system/supplier/taskCgzgVerify.html @@ -0,0 +1,324 @@ + + + + + + + + + +
+ + + + + + + +
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ + 点击上传 +
只能上传jpg/png文件,第一张图片为主图
+
+
+ +
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+ +
+ + + + + + + + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/system/supplier/taskModifyApply.html b/ruoyi-admin/src/main/resources/templates/system/supplier/taskModifyApply.html new file mode 100644 index 00000000..6bf69e8b --- /dev/null +++ b/ruoyi-admin/src/main/resources/templates/system/supplier/taskModifyApply.html @@ -0,0 +1,366 @@ + + + + + + + + + +
+
+ + + + + + + + +
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ + 点击上传 +
只能上传jpg/png文件,第一张图片为主图
+
+
+ + + +
+
+ +
+
+ + +
+
+
+
+
+ +
+ +
+
+
+
+
+ + + + + + + + + \ No newline at end of file