工器具个体管理
This commit is contained in:
parent
3d7becfad4
commit
10eb940bab
|
|
@ -5,6 +5,7 @@ import com.bonus.aqgqj.annotation.LogAnnotation;
|
|||
import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto;
|
||||
import com.bonus.aqgqj.basis.service.ToolsManageService;
|
||||
import com.bonus.aqgqj.model.PasswordConfig;
|
||||
import com.bonus.aqgqj.model.Role;
|
||||
import com.bonus.aqgqj.model.SysUser;
|
||||
import com.bonus.aqgqj.system.dao.UserDao;
|
||||
import com.bonus.aqgqj.system.service.UserService;
|
||||
|
|
@ -33,9 +34,10 @@ import java.util.Objects;
|
|||
|
||||
|
||||
/**
|
||||
* 工器具管理
|
||||
* 工器具个体管理
|
||||
* @author hay
|
||||
*/
|
||||
@Api(tags = "工器具管理")
|
||||
@Api(tags = "工器具个体管理")
|
||||
@RestController
|
||||
@RequestMapping("/tools/")
|
||||
public class ToolsManageController {
|
||||
|
|
@ -47,7 +49,7 @@ public class ToolsManageController {
|
|||
|
||||
@PostMapping(value = "getList")
|
||||
@DecryptAndVerify(decryptedClass = ToolsManageDto.class)
|
||||
@LogAnnotation(operModul = "系统管理-用户管理", operation = "查询用列表", operDesc = "系统级事件",operType="查询")
|
||||
@LogAnnotation(operModul = "工器具管理-工器具个体管理", operation = "查询用列表", operDesc = "系统级事件",operType="查询")
|
||||
@PreAuthorize("@pms.hasPermission('sys:tools:query')" )
|
||||
public ServerResponse listUsers(EncryptedReq<ToolsManageDto> data) {
|
||||
PageHelper.startPage(data.getData().getPage(), data.getData().getLimit());
|
||||
|
|
@ -61,4 +63,34 @@ public class ToolsManageController {
|
|||
return ServerResponse.createErrorPage(data.getData().getPage(),data.getData().getLimit());
|
||||
}
|
||||
|
||||
@PostMapping(value = "getDetailsList")
|
||||
@DecryptAndVerify(decryptedClass = ToolsManageDto.class)
|
||||
@LogAnnotation(operModul = "工器具管理-工器具个体管理详情", operation = "查询用列表", operDesc = "系统级事件",operType="查询")
|
||||
@PreAuthorize("@pms.hasPermission('sys:tools:query')" )
|
||||
public ServerResponse getDetailsList(EncryptedReq<ToolsManageDto> data) {
|
||||
PageHelper.startPage(data.getData().getPage(), data.getData().getLimit());
|
||||
try {
|
||||
List<ToolsManageDto> list = toolsManageService.getDetailsList(data.getData());
|
||||
PageInfo<ToolsManageDto> pageInfo = new PageInfo<>(list);
|
||||
return ServerResponse.createSuccessPage(pageInfo,data.getData().getPage(),data.getData().getLimit());
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return ServerResponse.createErrorPage(data.getData().getPage(),data.getData().getLimit());
|
||||
}
|
||||
|
||||
|
||||
@PostMapping(value = "all")
|
||||
@LogAnnotation(operModul = "工器具管理", operation = "查询所有工器具", operDesc = "系统级事件",operType="查询")
|
||||
@PreAuthorize("@pms.hasPermission('sys:tools:query')" )
|
||||
public ServerResponse getAll() {
|
||||
try {
|
||||
List<ToolsManageDto> list = toolsManageService.listTools();
|
||||
return ServerResponse.createSuccess(list);
|
||||
}catch (Exception e){
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return ServerResponse.createErroe("操作失败");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,4 +25,23 @@ public interface ToolsManageDao {
|
|||
*/
|
||||
List<ToolsManageDto> list(ToolsManageDto bean);
|
||||
|
||||
/**
|
||||
* 获取工器具
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
String getSampleTools(Integer id);
|
||||
|
||||
/**
|
||||
* 获取详情列表
|
||||
* @param data
|
||||
* @return
|
||||
*/
|
||||
List<ToolsManageDto> getDetailsList(ToolsManageDto data);
|
||||
|
||||
/**
|
||||
* 获取工器具
|
||||
* @return
|
||||
*/
|
||||
List<ToolsManageDto> listTools();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,119 +3,76 @@ package com.bonus.aqgqj.basis.entity.dto;
|
|||
import com.bonus.aqgqj.base.entity.PageEntity;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 工器具个体管理
|
||||
* @author hay
|
||||
*/
|
||||
@Data
|
||||
public class ToolsManageDto extends PageEntity {
|
||||
|
||||
private static final long serialVersionUID = -6525908145032868837L;
|
||||
|
||||
private Long id;
|
||||
|
||||
private Integer id;
|
||||
|
||||
/**
|
||||
* 登录名
|
||||
* 名称
|
||||
*/
|
||||
private String loginName;
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 用户名
|
||||
* 送样单位
|
||||
*/
|
||||
private String username;
|
||||
private String customName;
|
||||
|
||||
/**
|
||||
* 工号
|
||||
* 送样人
|
||||
*/
|
||||
private String userCode;
|
||||
private String sampleUser;
|
||||
|
||||
/**
|
||||
* 单位部门
|
||||
* 送样时间
|
||||
*/
|
||||
private String orgName;
|
||||
private String sampleTime;
|
||||
|
||||
/**
|
||||
* 角色名称
|
||||
* 送样设备
|
||||
*/
|
||||
private String roleName;
|
||||
|
||||
private String password;
|
||||
|
||||
private String oldPassword;
|
||||
private String sampleTools;
|
||||
|
||||
/**
|
||||
* 手机号
|
||||
* 收样人
|
||||
*/
|
||||
private String phone;
|
||||
private String collectSamplesUser;
|
||||
|
||||
/**
|
||||
* 用户类型
|
||||
* 收样时间
|
||||
*/
|
||||
private String userType;
|
||||
|
||||
private String email;
|
||||
|
||||
private Integer sex;
|
||||
|
||||
private Integer state;
|
||||
|
||||
private String collectSamplesTime;
|
||||
|
||||
/**
|
||||
* 角色id
|
||||
* 班组
|
||||
*/
|
||||
private String roleId;
|
||||
private String teamName;
|
||||
|
||||
/**
|
||||
* 组织机构id
|
||||
* 设备编号
|
||||
*/
|
||||
private Integer orgId;
|
||||
private String devTypeCode;
|
||||
|
||||
/**
|
||||
* 所属单位
|
||||
* 生产厂家
|
||||
*/
|
||||
private String unit;
|
||||
private String factoryName;
|
||||
|
||||
/**
|
||||
* 所属部门
|
||||
* 生产日期
|
||||
*/
|
||||
private String dept;
|
||||
private String produceDate;
|
||||
|
||||
/**
|
||||
* 登录权限
|
||||
* 设备规格
|
||||
*/
|
||||
private String loginType;
|
||||
private String devModule;
|
||||
|
||||
private String headImgUrl;
|
||||
|
||||
private String delFlag;
|
||||
|
||||
/**
|
||||
* 账号类型
|
||||
*/
|
||||
private int type;
|
||||
|
||||
/**
|
||||
* 休眠时间
|
||||
*/
|
||||
private String sleepTime;
|
||||
|
||||
private String updatePasswordTime;
|
||||
|
||||
/**
|
||||
* 临时账号时间
|
||||
*/
|
||||
private String lsTime;
|
||||
|
||||
/**
|
||||
* 登录时间
|
||||
*/
|
||||
private String loginTimes;
|
||||
|
||||
private String status;
|
||||
|
||||
private String newUser;
|
||||
|
||||
public interface Status {
|
||||
int DISABLED = 0;
|
||||
int VALID = 1;
|
||||
int LOCKED = 2;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,6 +10,10 @@ import com.bonus.aqgqj.utils.ServerResponse;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 工器具个体管理
|
||||
* @author hay
|
||||
*/
|
||||
public interface ToolsManageService {
|
||||
/**
|
||||
* 查询列表
|
||||
|
|
@ -18,4 +22,16 @@ public interface ToolsManageService {
|
|||
*/
|
||||
List<ToolsManageDto> list(ToolsManageDto bean);
|
||||
|
||||
/**
|
||||
* 详情列表
|
||||
* @param data
|
||||
* @return
|
||||
*/
|
||||
List<ToolsManageDto> getDetailsList(ToolsManageDto data);
|
||||
|
||||
/**
|
||||
* 工器具列表
|
||||
* @return
|
||||
*/
|
||||
List<ToolsManageDto> listTools();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import com.bonus.aqgqj.basis.dao.ToolsManageDao;
|
|||
import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto;
|
||||
import com.bonus.aqgqj.basis.service.ToolsManageService;
|
||||
import com.bonus.aqgqj.model.PasswordConfig;
|
||||
import com.bonus.aqgqj.model.Role;
|
||||
import com.bonus.aqgqj.model.SysUser;
|
||||
import com.bonus.aqgqj.system.dao.UserDao;
|
||||
import com.bonus.aqgqj.system.service.UserService;
|
||||
|
|
@ -23,6 +24,11 @@ import javax.annotation.Resource;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @description 工器具个体管理
|
||||
* @author hay
|
||||
* @date 2024/7/20 16:10
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class ToolsManageServiceImpl implements ToolsManageService {
|
||||
|
|
@ -32,11 +38,34 @@ public class ToolsManageServiceImpl implements ToolsManageService {
|
|||
private ToolsManageDao toolsManageDao;
|
||||
|
||||
/**
|
||||
* 查询用户列表
|
||||
* 查询列表
|
||||
* @param bean
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<ToolsManageDto> list(ToolsManageDto bean) {
|
||||
return toolsManageDao.list(bean);
|
||||
List<ToolsManageDto> list = toolsManageDao.list(bean);
|
||||
for (ToolsManageDto dto : list){
|
||||
String sampleTools = toolsManageDao.getSampleTools(dto.getId());
|
||||
dto.setSampleTools(sampleTools);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询详情列表
|
||||
* @param data
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<ToolsManageDto> getDetailsList(ToolsManageDto data) {
|
||||
return toolsManageDao.getDetailsList(data);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ToolsManageDto> listTools() {
|
||||
List<ToolsManageDto> list = toolsManageDao.listTools();
|
||||
return list;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -3,44 +3,58 @@
|
|||
<mapper namespace="com.bonus.aqgqj.basis.dao.ToolsManageDao">
|
||||
|
||||
<select id="list" resultType="com.bonus.aqgqj.basis.entity.dto.ToolsManageDto">
|
||||
SELECT
|
||||
t.id,
|
||||
t.login_name AS loginName,
|
||||
t.user_name AS username,
|
||||
t.user_code AS userCode,
|
||||
t.sex,
|
||||
t.org_id as orgId,
|
||||
CONCAT(so.org_name,'/',t.team_name) as orgName,
|
||||
sr.role_name roleName,
|
||||
t.phone AS phone,
|
||||
t.team_id as teamId,
|
||||
t.team_name as teamName,
|
||||
CASE
|
||||
t.user_type
|
||||
WHEN '0' THEN
|
||||
'内部用户'
|
||||
WHEN '1' THEN
|
||||
'外部用户' ELSE ''
|
||||
END userType,
|
||||
t.state AS state,
|
||||
t.del_flag AS delFlag
|
||||
FROM
|
||||
sys_user t
|
||||
LEFT JOIN sys_role sr ON sr.role_id = t.role_id
|
||||
LEFT JOIN sys_org so ON so.org_id = t.org_id
|
||||
where t.del_flag = 0
|
||||
<if test="username != null and username != ''">
|
||||
and t.user_name like concat('%', #{username}, '%')
|
||||
SELECT ts.id,
|
||||
tc.custom_name as customName,
|
||||
ts.sample_user as sampleUser,
|
||||
ts.sample_time as sampleTime,
|
||||
su.user_name as collectSamplesUser,
|
||||
tsd.create_time as collectSamplesTime,
|
||||
tt.team_name as teamName
|
||||
FROM tb_sample ts
|
||||
LEFT JOIN tb_custom tc
|
||||
on tc.id = ts.custom_id
|
||||
LEFT JOIN tb_sample_device tsd on tsd.sample_id = ts.id
|
||||
LEFT JOIN sys_user su on su.id = tsd.create_user
|
||||
LEFT JOIN tb_team tt on tt.id = ts.team_id
|
||||
WHERE ts.del_flag = '0'
|
||||
<if test="collectSamplesUser != null and collectSamplesUser != ''">
|
||||
AND su.user_name like concat('%', #{collectSamplesUser}, '%')
|
||||
</if>
|
||||
<if test="phone != null and phone != ''">
|
||||
and t.phone like concat('%', #{phone}, '%')
|
||||
<if test="sampleTools != null and sampleTools != ''">
|
||||
and tsd.dev_type_name like concat('%',#{sampleTools}, '%')
|
||||
</if>
|
||||
<if test="orgId != null and orgId != ''">
|
||||
and t.org_id = #{orgId}
|
||||
GROUP BY ts.id
|
||||
</select>
|
||||
<select id="getSampleTools" resultType="java.lang.String">
|
||||
SELECT GROUP_CONCAT(aa.dev_type_name SEPARATOR '、') AS sampleTools
|
||||
FROM (SELECT DISTINCT tsd.dev_type_name
|
||||
FROM tb_sample_device tsd
|
||||
LEFT JOIN tb_sample ts ON ts.id = tsd.sample_id
|
||||
WHERE tsd.sample_id = #{id}
|
||||
AND tsd.del_falg = '0') aa
|
||||
</select>
|
||||
<select id="getDetailsList" resultType="com.bonus.aqgqj.basis.entity.dto.ToolsManageDto">
|
||||
select
|
||||
tsd.id,
|
||||
tsd.dev_type_name as sampleTools,
|
||||
tsd.dev_type_code as devTypeCode,
|
||||
tsd.dev_module as devModule
|
||||
from
|
||||
tb_sample_device tsd
|
||||
where tsd.del_falg = 0
|
||||
and tsd.sample_id = #{id}
|
||||
<if test="sampleTools != null and sampleTools != ''">
|
||||
and tsd.dev_type_name like concat('%',#{sampleTools}, '%')
|
||||
</if>
|
||||
<if test="userType != null and userType != ''">
|
||||
and t.user_type = #{userType}
|
||||
</if>
|
||||
order by t.del_flag ASC , t.state,t.create_time DESC
|
||||
</select>
|
||||
<select id="listTools" resultType="com.bonus.aqgqj.basis.entity.dto.ToolsManageDto">
|
||||
select
|
||||
id,
|
||||
dict_name as name
|
||||
from
|
||||
sys_distinct
|
||||
where
|
||||
p_id = 92
|
||||
and del_flag = 0
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
@ -0,0 +1,280 @@
|
|||
let form, layer, table, tableIns;
|
||||
let pageNum = 1, limitSize = 10; // 默认第一页,分页数量为10
|
||||
let orgData,selectOrgId;
|
||||
let idParam;
|
||||
|
||||
function setParams(params){
|
||||
idParam = JSON.parse(params).id;
|
||||
layui.use(['form', 'layer', 'table', 'laydate'], function () {
|
||||
form = layui.form;
|
||||
layer = layui.layer;
|
||||
table = layui.table;
|
||||
layui.form.render();
|
||||
pages(1, 10, 1);
|
||||
getToolsSelected();
|
||||
})
|
||||
}
|
||||
|
||||
function pages(pageNum, pageSize, typeNum) {
|
||||
let params = getReqParams(pageNum, pageSize, typeNum);
|
||||
let url = dataUrl + "/tools/getDetailsList"
|
||||
ajaxRequest(url, "POST", params, true, function () {
|
||||
}, function (result) {
|
||||
console.log(result);
|
||||
if (result.code === 200) {
|
||||
if (result.data) {
|
||||
initTable(result.data, result.limit, result.curr)
|
||||
laypages(result.count, result.curr, result.limit)
|
||||
}
|
||||
} else if (result.code === 500) {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function getToolsSelected() {
|
||||
let url = dataUrl + '/tools/all';
|
||||
ajaxRequest(url, "POST", null, true, function () {
|
||||
}, function (result) {
|
||||
if (result.code === 200) {
|
||||
setSelectValue(result.data, 'sampleTools');
|
||||
// return result.data
|
||||
} else {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
}
|
||||
|
||||
function laypages(total, page, limit) {
|
||||
layui.use(['laypage'], function () {
|
||||
let laypage = layui.laypage;
|
||||
laypage.render({
|
||||
elem: 'voi-page',
|
||||
count: total,
|
||||
curr: page,
|
||||
limit: limit,
|
||||
limits: [10, 20, 50, 100, 200, 500],
|
||||
layout: ['prev', 'page', 'next', 'skip', 'count', 'limit'],
|
||||
groups: 5,
|
||||
jump: function (obj, first) {
|
||||
if (!first) {
|
||||
pageNum = obj.curr, limitSize = obj.limit;
|
||||
pages(obj.curr, obj.limit, null);
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
/*初始化表格*/
|
||||
function initTable(dataList, limit, page) {
|
||||
let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, scrollbar: false, time: 0,});
|
||||
tableIns = table.render({
|
||||
elem: "#table_data",
|
||||
height: "full-130",
|
||||
data: dataList,
|
||||
limit: limit,
|
||||
cols: [
|
||||
[
|
||||
//表头
|
||||
{title: "序号", width: 80, unresize: true, align: "center",
|
||||
templet: function (d) {
|
||||
return (page - 1) * limit + d.LAY_INDEX;
|
||||
}
|
||||
},
|
||||
{field: "sampleTools", title: "设备类型", unresize: true, align: "center"},
|
||||
{field: "devTypeCode", title: "设备编号", unresize: true, align: "center"},
|
||||
{field: "factoryName", title: "生产厂家", unresize: true, align: "center"},
|
||||
{field: "produceDate", title: "生产日期", unresize: true, align: "center"},
|
||||
{field: "devModule", title: "设备规格", unresize: true, align: "center"},
|
||||
{
|
||||
field: "view1", title: "检测报告", unresize: true, align: "center",
|
||||
templet: function (d) {
|
||||
return '<a href="#" style="color: blue;" onclick="handleClick1(\'' + d.id + '\')">查看</a>';
|
||||
}
|
||||
},
|
||||
{
|
||||
field: "view2", title: "合格证", unresize: true, align: "center", templet: function (d) {
|
||||
return '<a href="#" style="color: blue;" onclick="handleClick2(\'' + d.id + '\')">查看</a>';
|
||||
}
|
||||
},
|
||||
{
|
||||
field: "view3", title: "设备二维码", unresize: true, align: "center", templet: function (d) {
|
||||
return '<a href="#" style="color: blue;" onclick="handleClick3(\'' + d.id + '\')">查看</a>';
|
||||
}
|
||||
},
|
||||
],
|
||||
],
|
||||
done: function (res, curr, count) {
|
||||
layer.close(loadingMsg);
|
||||
table.resize("table_data");
|
||||
count || this.elem.next(".layui-table-view").find(".layui-table-header").css("display", "inline-block");
|
||||
count || this.elem.next(".layui-table-view").find(".layui-table-box").css("overflow", "auto");
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
function handleClick1(view1) {
|
||||
alert('Clicked on: ' + view1);
|
||||
}
|
||||
|
||||
function handleClick2(view1) {
|
||||
alert('Clicked on: ' + view1);
|
||||
}
|
||||
|
||||
function handleClick3(view1) {
|
||||
alert('Clicked on: ' + view1);
|
||||
}
|
||||
|
||||
// 获取参数
|
||||
function getReqParams(page, limit, type) {
|
||||
var selectedValue =$('#sampleTools').val()
|
||||
// 2. 查找对应的选项文本
|
||||
var selectedText = $('#sampleTools option[value="' + selectedValue + '"]').text();
|
||||
if (selectedText=='请选择'){
|
||||
selectedText=''
|
||||
}
|
||||
let obj = {};
|
||||
if (!type) {
|
||||
obj = {
|
||||
page: page + "",
|
||||
limit: limit + "",
|
||||
id: idParam,
|
||||
sampleTools: selectedText,
|
||||
collectSamplesUser:$('#collectSamplesUser').val()
|
||||
};
|
||||
} else {
|
||||
obj = {
|
||||
page: '1',
|
||||
limit: '10',
|
||||
id: idParam,
|
||||
sampleTools: selectedText,
|
||||
collectSamplesUser: ''
|
||||
};
|
||||
}
|
||||
console.log(obj)
|
||||
obj={
|
||||
encryptedData:encryptCBC(JSON.stringify(obj))
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
|
||||
// 查询/重置
|
||||
function query() {
|
||||
let pattern = new RegExp("[%_<>]");
|
||||
if (pattern.test($("#loginName").val())) {
|
||||
$("#loginName").val('');
|
||||
return layer.msg('用户名查询包含特殊字符,请重新输入', {
|
||||
icon: 2,
|
||||
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
||||
});
|
||||
}
|
||||
if (pattern.test($("#phone").val())) {
|
||||
$("#phone").val('');
|
||||
return layer.msg('手机号查询包含特殊字符,请重新输入', {
|
||||
icon: 2,
|
||||
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
||||
});
|
||||
}
|
||||
pageNum = 1;
|
||||
pages(1, limitSize);
|
||||
}
|
||||
|
||||
|
||||
//重置
|
||||
function reset() {
|
||||
pages(1, limitSize, 1)
|
||||
}
|
||||
|
||||
|
||||
function reloadData() {
|
||||
pages(pageNum, limitSize);
|
||||
}
|
||||
|
||||
// 新增/修改平台用户
|
||||
function addData(id) {
|
||||
if (id) {
|
||||
title = '详情';
|
||||
}
|
||||
let param = {
|
||||
'id': id
|
||||
}
|
||||
openIframe2("addOrEditUser", title, "child/toolsFrom.html", '100%', '100%', param);
|
||||
}
|
||||
|
||||
/*删除用户*/
|
||||
function delData(id) {
|
||||
layer.confirm("确定删除吗?", {
|
||||
move: false
|
||||
}, function () {
|
||||
let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||||
let url = dataUrl + "/users/delById";
|
||||
let params = {
|
||||
'id': id
|
||||
}
|
||||
params={
|
||||
encryptedData:encryptCBC(JSON.stringify(params))
|
||||
}
|
||||
ajaxRequest(url, "POST", params, true, function () {
|
||||
}, function (result) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
if (result.code === 200) {
|
||||
parent.layer.msg(result.msg, {icon: 1})
|
||||
query()
|
||||
} else if (result.code === 500) {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
error(xhr)
|
||||
});
|
||||
})
|
||||
}
|
||||
|
||||
// 启用/停用/解除锁定
|
||||
function editUserAccountStatus(id, status, type) {
|
||||
let url = dataUrl + "/sys/user/editUserAccountStatus?token=" + token;
|
||||
let params = {
|
||||
'id': id,
|
||||
'accountStatus': status,
|
||||
'type': type
|
||||
}
|
||||
ajaxRequest(url, "POST", params, true, function () {
|
||||
}, function (result) {
|
||||
if (result.code === 200) {
|
||||
if(type){
|
||||
reloadData();
|
||||
}
|
||||
parent.layer.msg(result.msg, {icon: 1})
|
||||
} else if (result.code === 500) {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
}
|
||||
|
||||
// 管理员修改密码
|
||||
function resetPwd(id) {
|
||||
let param = {
|
||||
'id': id,
|
||||
'type': '1'
|
||||
}
|
||||
openIframe2("addOrEditUnifyUser", '修改密码', "password.html", '770px', '400px', param);
|
||||
}
|
||||
|
||||
/*下拉选表单赋值*/
|
||||
function setSelectValue(list, selectName) {
|
||||
console.log("list",list)
|
||||
let html = '<option value="" selected>请选择</option>';
|
||||
$.each(list, function (index, item) {
|
||||
html += '<option value="' + item.id + '">' + item.name + '</option>';
|
||||
})
|
||||
$('#' + selectName).empty().append(html);
|
||||
layui.form.render();
|
||||
}
|
||||
|
|
@ -1,46 +1,36 @@
|
|||
let form, layer, dtree, table, tableIns;
|
||||
let form, layer, table, tableIns;
|
||||
let pageNum = 1, limitSize = 10; // 默认第一页,分页数量为10
|
||||
let orgData,selectOrgId;
|
||||
|
||||
layui.config({
|
||||
base: "../../js/layui-v2.6.8/dtree/", //此处路径请自行处理, 可以使用绝对路径
|
||||
}).extend({
|
||||
dtree: 'dtree'
|
||||
}).use(['form', 'layer', 'table','dtree', 'laydate'], function () {
|
||||
layui.use(['form', 'layer', 'table', 'laydate'], function () {
|
||||
form = layui.form;
|
||||
layer = layui.layer;
|
||||
table = layui.table;
|
||||
dtree = layui.dtree;
|
||||
layui.form.render();
|
||||
orgData = getOrgTree();
|
||||
pages(1, 10, 1);
|
||||
form.on('switch(is-state)', function (obj) {
|
||||
console.log(obj);
|
||||
let url = dataUrl + "/users/updateEnableState";
|
||||
let params = {
|
||||
'id': this.value,
|
||||
'state': obj.elem.checked ? 1 : 0
|
||||
}
|
||||
params={
|
||||
encryptedData:encryptCBC(JSON.stringify(params))
|
||||
}
|
||||
ajaxRequest(url, "POST", params, true, function () {}, function (result) {
|
||||
console.log(result)
|
||||
reloadData();
|
||||
if (result.status === 200) {
|
||||
parent.layer.msg(result.data, {icon: 1})
|
||||
} else if (result.status === 204) {
|
||||
parent.layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
});
|
||||
getToolsSelected();
|
||||
})
|
||||
|
||||
|
||||
function getToolsSelected() {
|
||||
let url = dataUrl + '/tools/all';
|
||||
ajaxRequest(url, "POST", null, true, function () {
|
||||
}, function (result) {
|
||||
if (result.code === 200) {
|
||||
setSelectValue(result.data, 'sampleTools');
|
||||
// return result.data
|
||||
} else {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function pages(pageNum, pageSize, typeNum) {
|
||||
let params = getReqParams(pageNum, pageSize, typeNum);
|
||||
let url = dataUrl + "/users/getList"
|
||||
let url = dataUrl + "/tools/getList"
|
||||
ajaxRequest(url, "POST", params, true, function () {
|
||||
}, function (result) {
|
||||
console.log(result);
|
||||
|
|
@ -95,21 +85,21 @@ function initTable(dataList, limit, page) {
|
|||
return (page - 1) * limit + d.LAY_INDEX;
|
||||
}
|
||||
},
|
||||
{field: "loginName", title: "送样单位", unresize: true, align: "center"},
|
||||
{field: "username", title: "送样人", unresize: true, align: "center"},
|
||||
{field: "userCode", title: "送样时间", unresize: true, align: "center"},
|
||||
{field: "orgName", title: "送样设备", unresize: true, align: "center"},
|
||||
{field: "roleName", title: "收样人", unresize: true, align: "center"},
|
||||
{field: "phone", title: "收样时间", unresize: true, align: "center"},
|
||||
{field: "userType", title: "试验班组", unresize: true, align: "center"},
|
||||
{title: "操作", unresize: true, width: 300, align: "center",
|
||||
{field: "customName", title: "送样单位", unresize: true, align: "center"},
|
||||
{field: "sampleUser", title: "送样人", unresize: true, align: "center"},
|
||||
{field: "sampleTime", title: "送样时间", unresize: true, align: "center"},
|
||||
{field: "sampleTools", title: "送样设备", unresize: true, align: "center"},
|
||||
{field: "collectSamplesUser", title: "收样人", unresize: true, align: "center"},
|
||||
{field: "collectSamplesTime", title: "收样时间", unresize: true, align: "center"},
|
||||
{field: "teamName", title: "试验班组", unresize: true, align: "center"},
|
||||
{title: "操作", unresize: true, width: 85, align: "center",
|
||||
templet: function (d) {
|
||||
|
||||
let html = '';
|
||||
// let updaetpwd="<a class=\"layui-icon layui-icon-password\" style='cursor:pointer;' title='修改密码' onclick=\"resetPwd('" + d.id + "')\"></a>";
|
||||
let del="<a class=\"layui-icon layui-icon-delete\" style='cursor:pointer;' title='删除' onclick=\"delData('" + d.id + "')\"></a>"
|
||||
let edit="<a class=\"layui-icon layui-icon-edit\" style='cursor:pointer;' title='修改' onclick=\"addData('" + d.id + "')\"></a>";
|
||||
html=edit+del;
|
||||
// let del="<a class=\"layui-icon layui-icon-delete\" style='cursor:pointer;' title='删除' onclick=\"delData('" + d.id + "')\"></a>"
|
||||
let view="<a class=\"layui-icon layui-icon-form\" style='cursor:pointer;' title='查看' onclick=\"addData('" + d.id + "')\"></a>";
|
||||
html=view;
|
||||
if(d.delFlag==1){
|
||||
return '';
|
||||
}
|
||||
|
|
@ -130,24 +120,25 @@ function initTable(dataList, limit, page) {
|
|||
|
||||
// 获取参数
|
||||
function getReqParams(page, limit, type) {
|
||||
var selectedValue =$('#sampleTools').val()
|
||||
// 2. 查找对应的选项文本
|
||||
var selectedText = $('#sampleTools option[value="' + selectedValue + '"]').text();
|
||||
if (selectedText=='请选择'){
|
||||
selectedText=''
|
||||
}
|
||||
let obj = {};
|
||||
if (!type) {
|
||||
obj = {
|
||||
page: page + "",
|
||||
limit: limit + "",
|
||||
userName: $('#userName').val(),
|
||||
phone: $('#phone').val(),
|
||||
orgId: $('#orgId').val(),
|
||||
userType: $('#userType').val(),
|
||||
sampleTools: selectedText,
|
||||
collectSamplesUser:$('#collectSamplesUser').val()
|
||||
};
|
||||
} else {
|
||||
obj = {
|
||||
page: '1',
|
||||
limit: '10',
|
||||
userName: '',
|
||||
phone:'',
|
||||
orgId:'',
|
||||
userType: '',
|
||||
collectSamplesUser: ''
|
||||
};
|
||||
}
|
||||
console.log(obj)
|
||||
|
|
@ -191,43 +182,13 @@ function reloadData() {
|
|||
|
||||
// 新增/修改平台用户
|
||||
function addData(id) {
|
||||
let title = '新增用户'
|
||||
if (id) {
|
||||
title = '修改用户';
|
||||
title = '工器具个体管理/详情';
|
||||
}
|
||||
let param = {
|
||||
'id': id
|
||||
}
|
||||
openIframe2("addOrEditUser", title, "child/userForm.html", '1000px', '625px', param);
|
||||
}
|
||||
|
||||
/*删除用户*/
|
||||
function delData(id) {
|
||||
layer.confirm("确定删除吗?", {
|
||||
move: false
|
||||
}, function () {
|
||||
let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||||
let url = dataUrl + "/users/delById";
|
||||
let params = {
|
||||
'id': id
|
||||
}
|
||||
params={
|
||||
encryptedData:encryptCBC(JSON.stringify(params))
|
||||
}
|
||||
ajaxRequest(url, "POST", params, true, function () {
|
||||
}, function (result) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
if (result.code === 200) {
|
||||
parent.layer.msg(result.msg, {icon: 1})
|
||||
query()
|
||||
} else if (result.code === 500) {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
error(xhr)
|
||||
});
|
||||
})
|
||||
openIframe2("addOrEditUser", title, "child/toolsForm.html", '100%', '100%', param);
|
||||
}
|
||||
|
||||
// 启用/停用/解除锁定
|
||||
|
|
@ -262,47 +223,10 @@ function resetPwd(id) {
|
|||
openIframe2("addOrEditUnifyUser", '修改密码', "password.html", '770px', '400px', param);
|
||||
}
|
||||
|
||||
function getOrgTree() {
|
||||
let data = [];
|
||||
let url = dataUrl + '/users/getOrg';
|
||||
ajaxRequest(url, "POST", null, true, function () {
|
||||
}, function (result) {
|
||||
if (result.code === 200) {
|
||||
console.log(result,"getOrgTree")
|
||||
data = result.data;
|
||||
setOrgTree(data)
|
||||
} else {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
error(xhr)
|
||||
});
|
||||
return data;
|
||||
}
|
||||
|
||||
function setOrgTree(data){
|
||||
console.log("data",data)
|
||||
orgTree = dtree.renderSelect({
|
||||
elem: "#orgId",
|
||||
data: data,
|
||||
dataFormat: "list",
|
||||
skin: "laySimple",
|
||||
line: true, // 显示树线
|
||||
checkbar: false, //开启复选框
|
||||
done: function (data, url, first) {
|
||||
console.log($('#orgId').val())
|
||||
if (first) {
|
||||
var params = dtree.dataInit("orgId", $('#orgId').val());
|
||||
var selectParam = dtree.selectVal("orgId");
|
||||
console.log(params)
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/*下拉选表单赋值*/
|
||||
function setSelectValue(list, selectName) {
|
||||
let html = '<option value="" selected>单位部门</option>';
|
||||
console.log("list",list)
|
||||
let html = '<option value="" selected>请选择</option>';
|
||||
$.each(list, function (index, item) {
|
||||
html += '<option value="' + item.id + '">' + item.name + '</option>';
|
||||
})
|
||||
|
|
|
|||
|
|
@ -24,10 +24,9 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item" style="margin-top: 2%;">
|
||||
<label class="layui-form-label"><i style="padding: 0 10px;">*</i>角色编码</label>
|
||||
<label class="layui-form-label">角色编码</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" placeholder="角色编码" type="text" name="roleCode" id="roleCode" maxlength="25"
|
||||
lay-verify="required">
|
||||
<input class="layui-input" placeholder="角色编码" type="text" name="roleCode" id="roleCode" maxlength="25">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item" style="margin-top: 2%;">
|
||||
|
|
|
|||
|
|
@ -0,0 +1,37 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Dynamic Table</title>
|
||||
<style>
|
||||
table, th, td {
|
||||
border: 1px solid black;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
th, td {
|
||||
padding: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<button onclick="fillTable()">Fill Table</button>
|
||||
<table id="dynamicTable">
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>名称</th>
|
||||
<th>规格型号</th>
|
||||
<th>唯一标识号</th>
|
||||
<th>检验日期</th>
|
||||
<th>下次检验日期</th>
|
||||
<th>试验人员</th>
|
||||
<th>送检单位</th>
|
||||
</tr>
|
||||
<!-- 动态行将在这里插入 -->
|
||||
</table>
|
||||
|
||||
<script src="script.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<link rel="stylesheet" href="../../../js/layui-v2.6.8/css/layui.css" media="all">
|
||||
<link rel="stylesheet" href="../../../js/layui-v2.6.8/dtree/dtree.css">
|
||||
<link rel="stylesheet" href="../../../js/layui-v2.6.8/dtree/font/dtreefont.css">
|
||||
<link rel="stylesheet" href="../../../css/table-common2.css">
|
||||
<script src="../../../js/libs/jquery-2.1.1.min.js" charset="UTF-8" type="text/javascript"></script>
|
||||
<script src="../../../js/layui-v2.6.8/layui.js" charset="UTF-8" type="text/javascript"></script>
|
||||
<script src="../../../js/publicJs.js"></script>
|
||||
<script src="../../../js/commonUtils.js"></script>
|
||||
<script src="../../../js/openIframe.js"></script>
|
||||
<script src="../../../js/my/aes.js"></script>
|
||||
<script src="../../../js/ajaxRequest.js"></script>
|
||||
<title>详情</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="content">
|
||||
<div class="basic-search-box layout">
|
||||
<form class="layui-form basic-form" onsubmit="return false;">
|
||||
<div class="layui-form-item">
|
||||
|
||||
<div class="layui-inline" style="padding: 0 0 0 10px;">
|
||||
<div class="layui-input-inline">
|
||||
<select id="sampleTools" name="sampleTools" class="form-control input-sm">
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- <div class="layui-inline" style="padding: 0 0 0 10px;">-->
|
||||
<!-- <div class="layui-input-inline">-->
|
||||
<!-- <input type="text" id="collectSamplesUser" maxlength="30" class="layui-input" autocomplete="off" placeholder="请输入收样人">-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
|
||||
|
||||
<div class="layui-inline btns">
|
||||
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm btn-1" onclick="query(1)">查询
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="table-box" table-responsive style="z-index: 1;">
|
||||
<table id="table_data" class="table" lay-filter="table_data"></table>
|
||||
<div id="voi-page" class="layout"></div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
<script src="../../../js/tools/child/toolsForm.js" charset="UTF-8" type="text/javascript"></script>
|
||||
</html>
|
||||
|
|
@ -9,6 +9,7 @@
|
|||
<script src="../../js/libs/jquery-2.1.1.min.js" charset="UTF-8" type="text/javascript"></script>
|
||||
<script src="../../js/layui-v2.6.8/layui.js" charset="UTF-8" type="text/javascript"></script>
|
||||
<script src="../../js/publicJs.js"></script>
|
||||
<script src="../../js/dict.js"></script>
|
||||
<script src="../../js/commonUtils.js"></script>
|
||||
<script src="../../js/openIframe.js"></script>
|
||||
<script src="../../js/my/aes.js"></script>
|
||||
|
|
@ -23,14 +24,14 @@
|
|||
|
||||
<div class="layui-inline" style="padding: 0 0 0 10px;">
|
||||
<div class="layui-input-inline">
|
||||
<select id="devTypeId" name="userType" class="form-control input-sm">
|
||||
<select id="sampleTools" name="sampleTools" class="form-control input-sm">
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline" style="padding: 0 0 0 10px;">
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" id="userName" maxlength="30" class="layui-input" autocomplete="off" placeholder="请输入用户名">
|
||||
<input type="text" id="collectSamplesUser" maxlength="30" class="layui-input" autocomplete="off" placeholder="请输入收样人">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
@ -38,12 +39,12 @@
|
|||
<div class="layui-inline btns">
|
||||
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm btn-1" onclick="query(1)">查询
|
||||
</button>
|
||||
<button type="button" class="layui-btn layui-btn-primary layui-btn-sm btn-2"
|
||||
onclick="addData(null)">
|
||||
<div class="layout" style="justify-content: space-around;"><img
|
||||
src="../../img/form/add_icon3.png">
|
||||
<p>新增</p></div>
|
||||
</button>
|
||||
<!-- <button type="button" class="layui-btn layui-btn-primary layui-btn-sm btn-2"-->
|
||||
<!-- onclick="addData(null)">-->
|
||||
<!-- <div class="layout" style="justify-content: space-around;"><img-->
|
||||
<!-- src="../../img/form/add_icon3.png">-->
|
||||
<!-- <p>新增</p></div>-->
|
||||
<!-- </button>-->
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
|
@ -60,11 +61,5 @@
|
|||
}
|
||||
</style>
|
||||
|
||||
<script type="text/html" id="is-state">
|
||||
<input type="checkbox" name="state" value="{{d.id}}" lay-skin="switch" lay-text="开|关"
|
||||
lay-filter="is-state"
|
||||
{{ d.state== 1 ? 'checked' : '' }}>
|
||||
</script>
|
||||
|
||||
<script src="../../js/tools/toolsMge.js" charset="UTF-8" type="text/javascript"></script>
|
||||
</html>
|
||||
|
|
@ -107,31 +107,6 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<!-- <div class="layui-form-item">-->
|
||||
<!-- <label class="layui-form-label"><i style="padding: 0 10px;">*</i>登录权限</label>-->
|
||||
<!-- <div class="layui-input-inline" id="cbGuDing" >-->
|
||||
<!-- <input type="checkbox" name="loginType" value="1" title="后台" lay-skin="primary" checked>-->
|
||||
<!-- <input type="checkbox" name="loginType" value="2" title="大屏" lay-skin="primary">-->
|
||||
<!-- <input type="checkbox" name="loginType" value="3" title="app" lay-skin="primary">-->
|
||||
<!-- <input type="hidden" id="loginType" />-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
|
||||
<!-- <div class="layui-form-item">-->
|
||||
<!-- <label class="layui-form-label">邮箱</label>-->
|
||||
<!-- <div class="layui-input-inline">-->
|
||||
<!-- <input class="layui-input" autocomplete="off"-->
|
||||
<!-- maxlength="50" id="email" name="email">-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="layui-form-item">-->
|
||||
<!-- <label class="layui-form-label">部门</label>-->
|
||||
<!-- <div class="layui-input-inline">-->
|
||||
<!-- <input class="layui-input" type="text" id="dept" name="dept" autocomplete="off"-->
|
||||
<!-- maxlength="50">-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
|
||||
<button type="submit" id="formSubmit" class="layui-btn" lay-submit="" lay-filter="formData"
|
||||
style="display: none;"></button>
|
||||
</form>
|
||||
|
|
|
|||
Loading…
Reference in New Issue