jiazx0107
2026-01-18 b7fa11ff11ea34ac0231fcdd41135b3def7129de
调功工单功能
已修改8个文件
已添加1个文件
456 ■■■■ 文件已修改
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SysUserService.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/utils/DateUtil.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java 53 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java 158 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/CommonPR.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrder.view.xml 127 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrderPR.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/models/core.model.xml 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/java/com/fzzy/common/manager/CommonManager.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SysUserService.java
@@ -1,5 +1,6 @@
package com.fzzy.igds.service;
import com.fzzy.igds.constant.Constant;
import com.fzzy.igds.utils.ContextUtil;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.StringUtils;
@@ -44,4 +45,34 @@
    public SysUser getUserByLoginName(String loginName) {
        return userMapper.selectUserByLoginName(loginName);
    }
    /**
     * æ ¹æ®å½“前登录人的类型获取用户列表
     * @return
     */
    public List<SysUser> listUserByCurUserType() {
        SysUser user = ContextUtil.getLoginUser();
        SysUser param = new SysUser();
        param.setCompanyId(user.getCompanyId());
        param.setUserType(user.getUserType());
        //监管用户,获取监管用户列表
        if (Constant.USER_TYPE_10.equals(user.getUserType())) {
            //
        }
        //库区用户,如果是公司用户可以查看公司下属所有库区,如果为当前库区只查询当前库区
        if (Constant.USER_TYPE_30.equals(user.getUserType())) {
            param.setDeptId(user.getDeptId());
        }
        //银行用户,根据合同查询银行下所有库区
        if (Constant.USER_TYPE_20.equals(user.getUserType())) {
            if (StringUtils.isBlank(user.getUserData())) user.setUserData("1");
            param.setUserData(user.getUserData());
        }
        return userMapper.selectUserList(param);
    }
}
fzzy-igdss-core/src/main/java/com/fzzy/igds/utils/DateUtil.java
@@ -2,6 +2,8 @@
import org.apache.commons.lang3.time.DateUtils;
import java.time.LocalDate;
import java.time.ZoneId;
import java.util.Calendar;
import java.util.Date;
@@ -245,9 +247,22 @@
        cal.set(Calendar.MILLISECOND, 0);
        return (cal.getTimeInMillis() - System.currentTimeMillis()) / 1000;
    }
    public static boolean isToday(Date date) {
        if (date == null) {
            return false;
        }
        LocalDate today = LocalDate.now();
        LocalDate targetDate = date.toInstant()
                .atZone(ZoneId.systemDefault())
                .toLocalDate();
        return today.equals(targetDate);
    }
    public static void main(String[] args) {
        System.out.println(getMinute(new Date()));
    }
}
fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java
@@ -11,6 +11,7 @@
import com.fzzy.work.domain.WorkOrder;
import com.fzzy.work.domain.WorkOrderConf;
import com.fzzy.work.domain.WorkOrderProcess;
import com.ruoyi.common.core.domain.entity.SysUser;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
@@ -85,7 +86,7 @@
        process.setAssigneeName(work.getCreateBy());
        process.setAssigneeId(work.getCreateById());
        process.setNode(WorkNode.NODE_START.getCode());
        orderProcessService.addData(process,false);
        orderProcessService.addData(process, false);
        return BaseResp.success();
    }
@@ -130,7 +131,7 @@
        process.setAssigneeName(work.getCreateBy());
        process.setAssigneeId(work.getCreateById());
        process.setNode(WorkNode.NODE_START.getCode());
        orderProcessService.addData(process,false);
        orderProcessService.addData(process, false);
        return BaseResp.success();
    }
@@ -184,6 +185,15 @@
            return BaseResp.error("当前工单已处理,请刷新页面重试!!");
        }
        //判断是不是指定处理人
        SysUser user = ContextUtil.getLoginUser();
        if (StringUtils.isNotEmpty(work.getAssigneeId())) {
            if (!work.getAssigneeId().equals(user.getLoginName())) {
                return BaseResp.error("当前工单已分配其他人处理,请勿处理");
            }
        }
        String curNode = process.getNode();
        //获取处理人
        if (!curNode.equals(work.getNode())) {
@@ -194,12 +204,13 @@
        WorkOrderConf conf = confService.selectById(work.getConfId());
        if (null == conf) return BaseResp.error("当前工单未配置流程");
        //添加记录
        process.setId(ContextUtil.UUID());
        process.setCreateTime(new Date());
        process.setOrderId(work.getId());
        process.setAssigneeName(ContextUtil.getLoginUserName());
        process.setAssigneeId(ContextUtil.getLoginName());
        process.setAssigneeName(user.getUserName());
        process.setAssigneeId(user.getLoginName());
        WorkNode nextNode = this.getNextNode(work.getNode(), conf);
@@ -209,7 +220,6 @@
        if ("pass".equals(action)) {
            process.setAction("通过");
            process.setNode(work.getNode());
            //结束判断,如果是结束节点,则结束工单
            if (WorkNode.NODE_END.getCode().equals(nextNode.getCode())) {
                work.setStatus(WorkStatus.STATUS_50.getCode());
@@ -218,20 +228,47 @@
                work.setNode(nextNode.getCode());
                orderService.complete(work);
            }
            //增加审批记录
            orderProcessService.addData(process, WorkNode.NODE_END.equals(nextNode));
            return BaseResp.success();
        }
        //拒绝操作
        if ("refuse".equals(action)) {
            process.setAction("拒绝");
            process.setNode(WorkNode.NODE_END.getCode());
            work.setStatus(WorkStatus.STATUS_60.getCode());
            orderService.complete(work);
            //增加审批记录
            orderProcessService.addData(process, true);
            return BaseResp.success();
        }
        //增加审批记录
        orderProcessService.addData(process,nextNode.equals(WorkNode.NODE_END));
        //转交或者指派操作
        if ("transfer".equals(action)) {
        return BaseResp.success();
            if (StringUtils.isEmpty(process.getAssigneeName())) {
                return BaseResp.error("请选择处理人");
            }
            process.setAction("转交/指派");
            process.setNode(work.getNode());
            String info = user.getUserName() + "转交给" + process.getAssigneeName() + "处理,处理建议:" + process.getRemark();
            process.setRemark(info);
            //更新处理人
            work.setAssigneeId(process.getAssigneeId());
            work.setAssigneeName(process.getAssigneeName());
            orderService.updateData(work);
            orderProcessService.addData(process, false);
            return BaseResp.success();
        }
        return BaseResp.error("系统没有识别到操作动作,未执行相关流程审批");
    }
}
fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java
@@ -17,11 +17,10 @@
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.*;
import javax.annotation.Resource;
@@ -30,6 +29,7 @@
 * @Author: Andy.jia
 * @Date: 2025/12/19
 */
@Slf4j
@Service
public class WorkOrderService {
    @Resource
@@ -59,43 +59,12 @@
        //获取当前登录人
        SysUser user = ContextUtil.getLoginUser();
        QueryWrapper<WorkOrder> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("company_id", user.getCompanyId());
        String scope = param.getScope();
        if (StringUtils.isEmpty(scope)) scope = WorkOrderParam.SCOPE_SELF;
        //监管用户-查看所有库区和待办
        if (Constant.USER_TYPE_10.equals(user.getUserType())) {
            if (WorkOrderParam.SCOPE_SELF.equals(scope)) {
                queryWrapper.eq("node", WorkNode.NODE2.getCode());
            }
        }
        //库区用户,如果是公司用户可以查看公司下属所有库区,如果为当前库区只查询当前库区
        if (Constant.USER_TYPE_30.equals(user.getUserType())) {
            if (ContextUtil.isDepotUser(user.getDeptId() + "")) {
                queryWrapper.eq("dept_id", user.getDeptId() + "");
            } else {
                queryWrapper.likeRight("dept_id", user.getDeptId() + "");
            }
            if (WorkOrderParam.SCOPE_SELF.equals(scope)) {
                queryWrapper.eq("node", WorkNode.NODE1.getCode());
            }
        }
        //银行用户,根据合同查询银行下所有库区
        if (Constant.USER_TYPE_20.equals(user.getUserType())) {
            //如果没有配置银行,设置一个不存在的银行号
            if (StringUtils.isBlank(user.getUserData())) user.setUserData("9");
            queryWrapper.eq("bank_id", user.getUserData());
            if (WorkOrderParam.SCOPE_SELF.equals(scope)) {
                queryWrapper.eq("node", WorkNode.NODE3.getCode());
            }
        }
        //更新查询条件
        this.updateQueryWrapper(queryWrapper, user, scope);
        queryWrapper.eq(null != param.getDeptId(), "dept_id", param.getDeptId());
        queryWrapper.like(null != param.getName(), "title", param.getName());
@@ -156,22 +125,116 @@
    }
    /**
     * èŽ·å–ç”¨æˆ·å¾…å¤„ç†å·¥å•æ•°
     * @param status
     * @param userId
     * èŽ·å–å½“å‰ç”¨æˆ·å¾…åŠžå·¥å•ï¼Œæ ¹æ®ç”¨æˆ·ç±»åž‹æˆ–è€…æ²¡æœ‰æŒ‡å®šå¤„ç†äººæˆ–è€…æŒ‡å®šä»»åŠ¡å¤„ç†äººçš„å·¥å•æ•°é‡
     * @param user
     * @return
     */
    public Integer getNumByUser(String status, String userId) {
    public Integer getTodoNumByUser(SysUser user) {
        QueryWrapper<WorkOrder> queryWrapper = new QueryWrapper<>();
        if (StringUtils.isBlank(userId) || StringUtils.isBlank(status)) {
            return 0;
        }
        queryWrapper.eq("assignee_id", userId);
        queryWrapper.eq("status", status);
        this.updateQueryWrapper(queryWrapper, user, WorkOrderParam.SCOPE_SELF);
        return workOrderMapper.selectCount(queryWrapper);
    }
    /**
     * èŽ·å–é¡µé¢æ±‡æ€»ç»Ÿè®¡ï¼Œæˆ‘çš„å¾…åŠžå·¥å•ï¼›æˆ‘çš„æŒ‡æ´¾å·¥å•ï¼›ä»Šæ—¥å¾…åŠžå·¥å•ï¼›æ€»å¾…åŠžå·¥å•
     *
     * æŸ¥è¯¢æ‰€æœ‰çš„待办工单,然后进行汇总统计
     * @return
     */
    public Map<String, String> pageSummary() {
        Map<String, String> result = new HashMap<>();
        //我的待办工单
        result.put("selfTodo", "0");
        //我的指派工单
        result.put("assignTodo", "0");
        //今日待办工单
        result.put("todayTodo", "0");
        //总待办工单数量
        result.put("sumTodo", "0");
        //获取总待办工单
        SysUser user = ContextUtil.getLoginUser();
        QueryWrapper<WorkOrder> queryWrapper = new QueryWrapper<>();
        String scope = WorkOrderParam.SCOPE_SELF;
        this.updateQueryWrapper(queryWrapper, user, scope);
        //获取所有的工单
        List<WorkOrder> list = workOrderMapper.selectList(queryWrapper);
        if (null == list || list.isEmpty()) {
            log.info("---------工单汇总结果---------{}", result);
            return result;
        }
        int selfTodo = 0, assignTodo = 0, todayTodo = 0, sumTodo = list.size();
        for (WorkOrder work : list) {
            if (null == work.getAssigneeId()) {
                selfTodo++;
            }
            if (null != work.getAssigneeId() && work.getAssigneeId().equals(user.getLoginName())) {
                selfTodo++;
                assignTodo++;
            }
            if (DateUtil.isToday(work.getCreateTime())) {
                todayTodo++;
            }
        }
        //我的待办工单
        result.put("selfTodo", selfTodo + "");
        //我的指派工单
        result.put("assignTodo", assignTodo + "");
        //今日待办工单
        result.put("todayTodo", todayTodo + "");
        //总待办工单数量
        result.put("sumTodo", sumTodo + "");
        log.info("---------工单汇总结果---------{}", result);
        return result;
    }
    private void updateQueryWrapper(QueryWrapper<WorkOrder> queryWrapper, SysUser user, String scope) {
        queryWrapper.eq("company_id", user.getCompanyId());
        //如果是个人工单,处理人为空或者为当前人
        if (WorkOrderParam.SCOPE_SELF.equals(scope)) {
            queryWrapper.isNull("assignee_id").or().eq("assignee_id", user.getLoginName());
        }
        //监管用户-查看所有库区和待办
        if (Constant.USER_TYPE_10.equals(user.getUserType())) {
            if (WorkOrderParam.SCOPE_SELF.equals(scope)) {
                queryWrapper.eq("node", WorkNode.NODE2.getCode());
            }
        }
        //库区用户,如果是公司用户可以查看公司下属所有库区,如果为当前库区只查询当前库区
        if (Constant.USER_TYPE_30.equals(user.getUserType())) {
            if (ContextUtil.isDepotUser(user.getDeptId() + "")) {
                queryWrapper.eq("dept_id", user.getDeptId() + "");
            } else {
                queryWrapper.likeRight("dept_id", user.getDeptId() + "");
            }
            if (WorkOrderParam.SCOPE_SELF.equals(scope)) {
                queryWrapper.eq("node", WorkNode.NODE1.getCode());
            }
        }
        //银行用户,根据合同查询银行下所有库区
        if (Constant.USER_TYPE_20.equals(user.getUserType())) {
            //如果没有配置银行,设置一个不存在的银行号
            if (StringUtils.isBlank(user.getUserData())) user.setUserData("9");
            queryWrapper.eq("bank_id", user.getUserData());
            if (WorkOrderParam.SCOPE_SELF.equals(scope)) {
                queryWrapper.eq("node", WorkNode.NODE3.getCode());
            }
        }
    }
@@ -196,4 +259,9 @@
    }
    public void updateData(WorkOrder work) {
        workOrderMapper.updateById(work);
    }
}
fzzy-igdss-view/src/main/java/com/fzzy/igds/CommonPR.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,32 @@
package com.fzzy.igds;
import com.bstek.dorado.annotation.DataProvider;
import com.fzzy.igds.service.SysUserService;
import com.fzzy.igds.utils.ContextUtil;
import com.ruoyi.common.core.domain.entity.SysUser;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
/**
 * @Desc: é€šç”¨PR管理层,如用用户信息管理
 * @Author: Andy.jia
 * @Date: 2026/1/17
 */
@Component
public class CommonPR {
    @Resource
    private SysUserService userService;
    /**
     * commonPR#listUserByCurUserType
     * æ ¹æ®å½“前登录人的类型获取用户列表
     * @return ç”¨æˆ·åˆ—表
     */
    @DataProvider
    public List<SysUser> listUserByCurUserType(){
        return userService.listUserByCurUserType();
    }
}
fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrder.view.xml
@@ -151,6 +151,7 @@
      </PropertyDef>
      <PropertyDef name="remark">
        <Property></Property>
        <Property name="label">审批建议</Property>
      </PropertyDef>
      <PropertyDef name="id">
        <Property></Property>
@@ -182,13 +183,26 @@
    }&#xD;
    view.get(&quot;#dsMain&quot;).set(&quot;parameter&quot;,param).flushAsync();&#xD;
}&#xD;
//汇总信息&#xD;
summaryCount = function(){&#xD;
    view.get(&quot;#ajaxSummary&quot;).execute(function(result){&#xD;
        console.log(result);&#xD;
        jQuery('#child-num1').text(result.selfTodo);&#xD;
        jQuery('#child-num2').text(result.assignTodo);&#xD;
        jQuery('#child-num3').text(result.todayTodo);&#xD;
        jQuery('#child-num4').text(result.sumTodo);&#xD;
    });&#xD;
}&#xD;
&#xD;
summaryCount();&#xD;
    &#xD;
query();&#xD;
      &#xD;
//宣传操作&#xD;
renderCell1 = function(arg,self){&#xD;
   var tabIndex = view.get(&quot;#tabMain.currentIndex&quot;);&#xD;
   var data = arg.data;&#xD;
   var htm = &quot;&lt;a onClick='audit()' class='a-btn1'>指派&lt;/a>&amp;nbsp;|&amp;nbsp;&lt;a onClick='showDetail()' class='a-btn2'>详细&lt;/a>&quot;;&#xD;
   var htm = &quot;&lt;a onClick='selectUser()' class='a-btn1'>指派&lt;/a>&amp;nbsp;|&amp;nbsp;&lt;a onClick='showDetail()' class='a-btn2'>详细&lt;/a>&quot;;&#xD;
   if(1 == tabIndex){&#xD;
           htm = &quot;&lt;a onClick='showDetail()' class='a-btn2'>详细&lt;/a>&quot;;&#xD;
   }&#xD;
@@ -218,18 +232,14 @@
    arg.dom.innerHTML = htm;&#xD;
}&#xD;
&#xD;
//点击审核&#xD;
audit = function(){&#xD;
    &#xD;
}&#xD;
//点击详细&#xD;
showDetail = function(){&#xD;
    var tabIndex = view.get(&quot;#tabMain.currentIndex&quot;);&#xD;
    var cur = view.get(&quot;#dsMain.data:#&quot;);&#xD;
    var dialog = view.get(&quot;#dialogMain&quot;);&#xD;
    view.get('^btnTag').set('visible',true);&#xD;
    view.get('^btnTag').set('disabled',false);&#xD;
    if(1 == tabIndex){&#xD;
        view.get('^btnTag').set('visible',false);&#xD;
        view.get('^btnTag').set('disabled',true);&#xD;
    }&#xD;
    dialog.show();&#xD;
    &#xD;
@@ -269,7 +279,15 @@
    var process = view.get(&quot;#dsProcess.data&quot;);&#xD;
    process.set(&quot;action&quot;,null);&#xD;
    process.set('remark',null);&#xD;
    process.set('assigneeId',null);&#xD;
    process.set('assigneeName',null);&#xD;
    view.get('#dialogTodo').hide();&#xD;
    view.get('#dialogSelectUser').hide();&#xD;
}&#xD;
selectUser = function(){&#xD;
    var process = view.get(&quot;#dsProcess.data&quot;);&#xD;
    process.set('action','transfer')&#xD;
    view.get(&quot;#dialogSelectUser&quot;).show();&#xD;
}&#xD;
</ClientEvent>
    <Property name="packages">font-awesome,css-common</Property>
@@ -377,35 +395,35 @@
    &#xD;
    &lt;!-- å¿«æ·æ–¹å¼ -->&#xD;
    &lt;div class=&quot;parent&quot;>&#xD;
   &#xD;
  &#xD;
        &lt;div class=&quot;child&quot;>&#xD;
            &lt;div class=&quot;console-link-block&quot;>&#xD;
                &lt;div class=&quot;console-link-block-num&quot;>0&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-text&quot;>今日工单统计&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-num&quot; id=&quot;child-num1&quot;>0&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-text&quot;>我的待办工单&lt;/div>&#xD;
                &lt;img class=&quot;console-icon&quot; src=&quot;/img/icon-wj.png&quot;>&#xD;
            &lt;/div>&#xD;
        &lt;/div>&#xD;
        &#xD;
        &lt;div class=&quot;child&quot;>&#xD;
            &lt;div class=&quot;console-link-block bg2&quot;>&#xD;
                &lt;div class=&quot;console-link-block-num&quot;>0&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-text&quot;>今日待完成工单&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-num&quot; id=&quot;child-num2&quot;>0&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-text&quot;>我的指派工单&lt;/div>&#xD;
                &lt;img class=&quot;console-icon&quot; src=&quot;/img/icon-wj2.png&quot;>&#xD;
            &lt;/div>&#xD;
        &lt;/div>&#xD;
        &#xD;
        &lt;div class=&quot;child&quot;>&#xD;
            &lt;div class=&quot;console-link-block bg3&quot;>&#xD;
                &lt;div class=&quot;console-link-block-num&quot;>0&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-text&quot;>总工单统计&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-num&quot; id=&quot;child-num3&quot;>0&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-text&quot;>今日工单&lt;/div>&#xD;
                &lt;img class=&quot;console-icon&quot; src=&quot;/img/icon-tj.png&quot;>&#xD;
            &lt;/div>&#xD;
        &lt;/div>&#xD;
        &#xD;
       &lt;div class=&quot;child&quot;>&#xD;
            &lt;div class=&quot;console-link-block bg4&quot;>&#xD;
                &lt;div class=&quot;console-link-block-num&quot;>0&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-text&quot;>总未完成工单&lt;/div>&#xD;
            &lt;div class=&quot;console-link-block bg5&quot;>&#xD;
                &lt;div class=&quot;console-link-block-num&quot; id=&quot;child-num4&quot;>0&lt;/div>&#xD;
                &lt;div class=&quot;console-link-block-text&quot;>总待办工单&lt;/div>&#xD;
                &lt;img class=&quot;console-icon&quot; src=&quot;/img/icon-tj2.png&quot;>&#xD;
            &lt;/div>&#xD;
        &lt;/div>&#xD;
@@ -421,7 +439,7 @@
        <Property name="margin-top">10px</Property>
      </Property>
      <AutoForm>
        <Property name="cols">*,*,*,*,90,90</Property>
        <Property name="cols">*,300,300,90,90,*</Property>
        <Property name="dataSet">dsQuery</Property>
        <Property name="labelAlign">right</Property>
        <Property name="labelWidth">100</Property>
@@ -429,11 +447,6 @@
          <Property name="name">deptId</Property>
          <Property name="property">deptId</Property>
          <Property name="trigger">autoMappingDropDown2</Property>
          <Editor/>
        </AutoFormElement>
        <AutoFormElement>
          <Property name="name">name</Property>
          <Property name="property">name</Property>
          <Editor/>
        </AutoFormElement>
        <AutoFormElement>
@@ -720,6 +733,7 @@
                    <Property name="tags">btnTag</Property>
                  </ToolBarButton>
                  <ToolBarButton>
                    <ClientEvent name="onClick">selectUser();</ClientEvent>
                    <Property name="caption">转交</Property>
                    <Property name="width">80</Property>
                    <Property name="exClassName">btn2</Property>
@@ -810,5 +824,72 @@
      <Property name="service">workOrderPR#todo</Property>
      <Property name="executingMessage">处理中……</Property>
    </AjaxAction>
    <DataSet id="dsSysUser">
      <Property name="dataType">[dtSysUser]</Property>
      <Property name="dataProvider">commonPR#listUserByCurUserType</Property>
    </DataSet>
    <DataSetDropDown id="selectUser">
      <Property name="dataSet">dsSysUser</Property>
      <Property name="property">userName</Property>
      <Property name="assignmentMap">assigneeId=loginName,assigneeName=userName</Property>
    </DataSetDropDown>
    <Dialog id="dialogSelectUser">
      <Property name="width">600</Property>
      <Property name="caption">指定/转让处理人</Property>
      <Property name="closeable">false</Property>
      <Property name="iconClass">fa fa-bookmark</Property>
      <Buttons>
        <Button>
          <ClientEvent name="onClick">todo();</ClientEvent>
          <Property name="caption">确定</Property>
          <Property name="iconClass">fa fa-check</Property>
          <Property name="exClassName">btn1</Property>
          <Property name="width">90</Property>
        </Button>
        <Button>
          <ClientEvent name="onClick">cancelTodo();</ClientEvent>
          <Property name="caption">取消</Property>
          <Property name="iconClass">fa fa-times</Property>
          <Property name="exClassName">btn3</Property>
          <Property name="width">90</Property>
        </Button>
      </Buttons>
      <Children>
        <Container>
          <AutoForm>
            <Property name="cols">*</Property>
            <Property name="dataSet">dsProcess</Property>
            <Property name="labelAlign">right</Property>
            <Property name="labelWidth">100</Property>
            <AutoFormElement>
              <Property name="name">assigneeName</Property>
              <Property name="property">assigneeName</Property>
              <Property name="trigger">selectUser</Property>
              <Editor/>
            </AutoFormElement>
            <AutoFormElement>
              <Property name="name">remark</Property>
              <Property name="property">remark</Property>
              <Editor>
                <TextArea>
                  <Property name="blankText">-- å¡«å†™å®¡æ‰¹å»ºè®® --</Property>
                  <Property name="height">100</Property>
                </TextArea>
              </Editor>
            </AutoFormElement>
            <AutoFormElement>
              <Property name="name">assigneeId</Property>
              <Property name="property">assigneeId</Property>
              <Property name="visible">false</Property>
              <Editor/>
            </AutoFormElement>
          </AutoForm>
        </Container>
      </Children>
      <Tools/>
    </Dialog>
    <AjaxAction id="ajaxSummary">
      <Property name="service">workOrderPR#pageSummary</Property>
    </AjaxAction>
  </View>
</ViewConfig>
fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrderPR.java
@@ -20,6 +20,7 @@
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
@@ -62,6 +63,16 @@
    /**
     * workOrderPR#pageSummary
     * å·¥å•汇总统计
     */
    @Expose
    public Map<String,String> pageSummary() {
       return workOrderService.pageSummary();
    }
    /**
     * å·¥å•状态
     * ${dorado.getDataProvider("workOrderPR#triggerStatus").getResult()}
     *
fzzy-igdss-view/src/main/java/models/core.model.xml
@@ -2020,4 +2020,31 @@
      <Property name="label">鸟瞰图</Property>
    </PropertyDef>
  </DataType>
  <DataType name="dtSysUser">
    <Property name="creationType">com.ruoyi.common.core.domain.entity.SysUser</Property>
    <PropertyDef name="companyId">
      <Property/>
    </PropertyDef>
    <PropertyDef name="userId">
      <Property name="dataType">Long</Property>
    </PropertyDef>
    <PropertyDef name="deptId">
      <Property name="dataType">Long</Property>
    </PropertyDef>
    <PropertyDef name="parentId">
      <Property name="dataType">Long</Property>
    </PropertyDef>
    <PropertyDef name="roleId">
      <Property name="dataType">Long</Property>
    </PropertyDef>
    <PropertyDef name="loginName">
      <Property/>
    </PropertyDef>
    <PropertyDef name="userName">
      <Property/>
    </PropertyDef>
    <PropertyDef name="userType">
      <Property/>
    </PropertyDef>
  </DataType>
</Model>
fzzy-igdss-web/src/main/java/com/fzzy/common/manager/CommonManager.java
@@ -244,7 +244,7 @@
        MainData mainData = new MainData();
        //待办工单数
        Integer orderNum = workOrderService.getNumByUser(WorkStatus.STATUS_30.getCode(), user.getLoginName());
        Integer orderNum = workOrderService.getTodoNumByUser(user);
        mainData.setOrderNum(orderNum);
        //统计出入库信息