项目中,我们经常会遇到上报数据的功能,今天小编就和大家从数据库到后端,再从后端到前端页面,一起实现这一功能。

逻辑:首先我需要查询表中的数据,查询到后再进行修改,修改的同时,状态也会修改。

一、我们首先设计数据库,命名规范,命名字段这些我就不多说了,只截取这一部分字段。

二、dao层写修改状态的接口。

/*** @Description 更新上报状态* @param* @return* @Author ying.wang1* @Date 2022年03月14日 上午11:07:16*/int updateReportStatusByBusIds(@Param("reportStatus")int reportStatus, @Param("list") List<String> list);

三、mapper层写sql。

1、添加字段。

<resultMap><result column="reportStatus" property="reportStatus" jdbcType="VARCHAR" />
</resultMap>

2、sql上添加字段,我没写全部的字段,只写了部分。

<sql id="Base_Column_List" >modifyTime,claimTypeIdorgCode, isDelete, createrId, createrName, createTime, modifierId, modifierName,modifyTime,claimTypeId, reportStatus</sql>

3、查询条件添加字段。

<!-- 查询纠纷列表--><select id="queryDsDetailList" resultType="com.pcitc.slms.ds.system.dto.DsDetailDto" parameterType="java.util.Map" >selectdsd.dsDetailId,dsd.endCaseReduce,dsd.createTime,dsd.reportStatus,group_concat(DISTINCT dsl.lawyerName) as lawyerNames,group_concat(DISTINCT CASE WHEN  dsp.legalStatus = 1 THEN dsp.partyName  END) as sourceMan,LEFT JOIN ds_party dsp  on dsd.dsDetailId = dsp.dsDetailId and dsp.isDelete = 0where dsd.isDelete = 0
<if test="disputesBeginTime != null and disputesBeginTime != ''">and dsd.disputesBeginTime &gt;= #{disputesBeginTime,jdbcType=TIMESTAMP}</if><if test="disputesEndTime != null and disputesEndTime != ''">and dsd.disputesBeginTime &lt;= #{disputesEndTime,jdbcType=TIMESTAMP}</if><if test="reportStatus != null and reportStatus != ''">and dsd.reportStatus = #{reportStatus,jdbcType=VARCHAR}</if>GROUP BY dsd.dsDetailIdorder by createTime desc

4、更新上报信息(对应刚才dao的接口)。

<!-- 更新上报状态信息--><update id="updateReportStatusByBusIds" parameterType="com.pcitc.slms.ds.system.entity.DsDetail" >update ds_detail<set ><if test="reportStatus != null" >reportStatus = #{reportStatus,jdbcType=VARCHAR},</if></set>where dsDetailId in<foreach collection="list" index="index" item="id" separator="," close=")" open="(">#{id}</foreach></update>

四、service接口。

/*** @Description 上报纠纷信息* @param* @return* @Author ying.wang1* @Date 2022年03月14日 上午09:18:47*/boolean disputeUp(List<String> ids);

五、Impl实现。

@Override@Transactional(rollbackFor = Exception.class)public boolean disputeUp(List<String> ids) {DsDetailDto disputeList = new DsDetailDto();//调用成功后将状态改为上报成功int num = dsDetailDao.updateReportStatusByBusIds(1,ids);if(num > 0){return true;}else{return false;}}

六、controller接口。

/**上报纠纷信息* @param [ids]* @author t-aiai.gao* @date 2022/9/9 14:20* @return com.pcitc.slms.common.dto.ResultInfoDTO<java.lang.Boolean>**/@RequestMapping(value = "/disputeUp", method = RequestMethod.POST)public ResultInfoDTO<Boolean> disputeUp(@RequestBody List<String> ids){ResultInfoDTO<Boolean> infoDTO = new ResultInfoDTO<Boolean>();if(CollectionUtils.isNotEmpty(ids)){log.info("上报纠纷信息开始===================>");boolean result = dsDetailService.disputeUp(ids);infoDTO.setReturnValue(true);infoDTO.setData(result);infoDTO.setMsg("上报纠纷信息成功!");log.info("上报纠纷信息结束====================>");}return infoDTO;}

七、前端页面之html。

<div class="ivu-form-item-content-x-lg"><!--<div class="input-radio-box">--><!--业务暂未开放,确认后开放<input class="ipt-type mr3" type="radio" name="choseUp"value="1" checked/>已选中<input class="ipt-type mr3" style="margin-left: 10px;" type="radio"name="choseUp" value="0" />未选中--><button class="ipt-btn btnprimary mr5" type="button"onclick="upData()">上报</button><!--</div>--></div>

八、前端页面之js。

1、点击上报。

//点击上报
function upData() {var checkVal = $("input[name='choseUp']:checked").val();var choseYesIds = $("#ds-up-list").jqGrid('getGridParam', 'selarrrow');console.log(choseYesIds)var allIds = $("#ds-up-list").getDataIDs();//已选中;未选中if(checkVal == 1){if(choseYesIds.length <= 0) {layer.confirm("请至少选中一条数据!", {icon: 2,title: '提示'},function (e) {layer.close(e);});}else{disputeUp(choseYesIds)}}else if(checkVal == 0){var choseNoIds = allIds.filter(function (val) { return !(choseYesIds.indexOf(val) > -1) }).concat(choseYesIds.filter(function (val) { return !(allIds.indexOf(val) > -1) }))disputeUp(choseNoIds)}
}

2、调用接口。

//调用上报后台接口
function disputeUp(ids) {if(ids.length > 0){layer.confirm("确定上报?", {icon: 3,title: '提示'},function () {$.ajax({type: "POST",contentType: "application/json",url: "/请求名称/请求路径/请求方法",dataType: "json",data: JSON.stringify(ids),success: function (data) {if (data && data.returnValue) {layer.msg("上报成功", {time: 1500, icon: 1}, function () {刷新本表});} else {layer.msg(data.msg, {time: 2000, icon: 2}, function () {刷新另一个表});}},error: function () {layer.msg("上报异常", {time: 2000, icon: 2}, function () {刷新本表});},});});}else{layer.confirm("请至少选中一条数据!", {icon: 2,title: '提示'},function (e) {layer.close(e);});}}

如此,便能实现上报功能了。

un9.9:实现上报及上报状态修改功能。相关推荐

  1. SAP BD87将IDoc状态修改为68 ?

    SAP BD87将IDoc状态修改为68 ? SAP项目实践中,为了实现系统接口,启用IDoc技术是很常见的. 启用了IDoc,常常需要相关人员进行IDoc的监控.对于一些没有成功Post的Idoc, ...

  2. UITableViewCell高亮时其子视图的状态修改

    为了进行UI自定义,修改了UITableViewCell的accessoryView,如下 UIButton * accessoryDetailDisclosureButton = [[UIButto ...

  3. 我的世界进入离开服务器消息,我的世界暂时离开状态修改 人性化设定AFK

    我的世界暂时离开状态修改 人性化设定AFK.常见的服务器暂时离开状态设定都是玩家几分钟不操作被强制踢出服务器,如果在规定时间内上线了,需要打字才能解除暂时离开的AFK状态.其实这些在ESS文件中可以手 ...

  4. java 瑞吉外卖day4及补全功能 文件上传下载 菜品分页查询 Dto类 菜品状态修改 菜品停售以及菜品删除

    文件上传下载 文件下载介绍 文件上传代码实现 服务端上传: @RestController @RequestMapping("/common") @Slf4j public cla ...

  5. hmailserver php,hmailserver关于afterlogic webmail php版本下的用户密码修改功能

    hmailserver关于afterlogic webmail php版本下的用户密码修改功能(飞城原创) hmailserver作邮件服务器,squirrelmail 作邮件服务器的web界面实在是 ...

  6. 2019年4月27日 修改功能

    import osdef search(data): #查询print('查询功能%s'%data)ret=[]backend_data='backend %s'%datawith open ('te ...

  7. 仿 手机QQ 登录、注册、找回密码、好友列表、QQ状态等功能的实现

    仿 手机QQ 登录.注册.找回密码.好友列表.QQ状态等功能的实现 全文 图 + 代码 .... 福利!!!(QQ登录背景,过度页面背景) 1.加载过程中的背景 2.登录页面 ==1. 登录页面 布局 ...

  8. web前端 | 博客(八)用户信息修改功能

    用户信息修改功能 当点击用户后面的按钮时,要跳转到用户信息修改页面.而修改和添加实际上是同一个页面. 要区分跳转后是添加操作还是修改操作,在于携带的参数. 如果是添加操作,那就直接跳转过去:如果是修改 ...

  9. 忽略链路状态的功能详解——网络测试仪实操

    一.忽略链路状态简介 当将测试仪的端口改为忽略连接状态时,无论物理链路LINK UP或是LINK DOWN,测试仪都会发送流量. 绝大部分设备进行发送流量的前提,都需要建立在物理链路LINK UP的状 ...

最新文章

  1. 由于找不到PBSYS90.dll,无法继续执行代码。重新安装程序可能会解决此问题!
  2. 主题已放宽,科研UP主们速来Bio-protocol破浪吧
  3. 时间序列模型(ARIMA模型)
  4. extjs获取元素name属性值_【ExtJS】各种获取元素组件方法
  5. 都江堰很美-佩服古人_Crmhf的一天
  6. python提取文件名的5-6位_python提取文件名
  7. python画图程序代码_少儿python编程(7)海龟画图(拓展1)
  8. 【Python】pip模块管理Python包的常用方法
  9. WordPress添加背景音乐
  10. 接口测试基础——第5篇xlrd模块
  11. Linux之scsi网络存储
  12. MATLAB代码:基于分布式ADMM算法的考虑碳排放交易的电力系统优化调度研究
  13. MOSS 中的计算公式
  14. 安卓linux获取最高权限获取,安卓root是什么意思(获取手机最高权限)
  15. android炫酷的动画效果
  16. 在项目中应用SpringSecurity权限控制
  17. 除了一汽和长白山 吉林还有数字经济这个新标签
  18. 京东方劝退_正式确认,华为mate40正面照来了,国行价“劝退”!
  19. c++禁用启用设备 usb
  20. IBinder进行向下类型转换发生ClassCastException的可能原因

热门文章

  1. 我的2017,五味杂陈
  2. TPTP—详细说明讲解
  3. 中科院大学计算机科学与技术王伟强,王伟强-中国科学院大学-UCAS
  4. Easyexcel 获取表格具体位置的内容
  5. 这世上,真有人会陪你手握屠龙刀,杀得生活措手不及!
  6. 如何给VS2015安装MSDN本地帮助文档 - 完整教程
  7. SQL获取某月第一天或最后一天
  8. IceCTF - All your Base are belong to us
  9. Nginx运行控制虚拟主机和访问控制
  10. 时间序列中季节性和非季节_在2019年会议季节生存的19个技巧