46 changed files with 2193 additions and 8 deletions
@ -0,0 +1,89 @@ |
|||
package com.boge.modules.car.controller; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.Map; |
|||
|
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.PathVariable; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RequestParam; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import com.boge.modules.car.entity.CarEntity; |
|||
import com.boge.modules.car.service.CarService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.R; |
|||
|
|||
|
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:51:45 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("car/car") |
|||
public class CarController { |
|||
@Autowired |
|||
private CarService carService; |
|||
|
|||
/** |
|||
* 列表 |
|||
*/ |
|||
@RequestMapping("/list") |
|||
//@RequiresPermissions("car:car:list")
|
|||
public R list(@RequestParam Map<String, Object> params){ |
|||
PageUtils page = carService.queryPage(params); |
|||
|
|||
return R.ok().put("page", page); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 信息 |
|||
*/ |
|||
@RequestMapping("/info/{carId}") |
|||
//@RequiresPermissions("car:car:info")
|
|||
public R info(@PathVariable("carId") Long carId){ |
|||
CarEntity car = carService.getById(carId); |
|||
|
|||
return R.ok().put("car", car); |
|||
} |
|||
|
|||
/** |
|||
* 保存 |
|||
*/ |
|||
@RequestMapping("/save") |
|||
//@RequiresPermissions("car:car:save")
|
|||
public R save(@RequestBody CarEntity car){ |
|||
carService.save(car); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 修改 |
|||
*/ |
|||
@RequestMapping("/update") |
|||
//@RequiresPermissions("car:car:update")
|
|||
public R update(@RequestBody CarEntity car){ |
|||
carService.updateById(car); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 删除 |
|||
*/ |
|||
@RequestMapping("/delete") |
|||
//@RequiresPermissions("car:car:delete")
|
|||
public R delete(@RequestBody Long[] carIds){ |
|||
carService.removeByIds(Arrays.asList(carIds)); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package com.boge.modules.car.dao; |
|||
|
|||
import com.boge.modules.car.entity.CarEntity; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:51:45 |
|||
*/ |
|||
@Mapper |
|||
public interface CarDao extends BaseMapper<CarEntity> { |
|||
|
|||
} |
@ -0,0 +1,52 @@ |
|||
package com.boge.modules.car.entity; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableId; |
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:51:45 |
|||
*/ |
|||
@Data |
|||
@TableName("sys_car") |
|||
public class CarEntity implements Serializable { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* id |
|||
*/ |
|||
@TableId |
|||
private Long carId; |
|||
/** |
|||
* 车型名称 |
|||
*/ |
|||
private String carName; |
|||
/** |
|||
* 导航类型 |
|||
*/ |
|||
private Integer navigationType; |
|||
/** |
|||
* 备注 |
|||
*/ |
|||
private String remarks; |
|||
/** |
|||
* 是否启用 |
|||
*/ |
|||
private Integer isOn; |
|||
/** |
|||
* 创建者ID |
|||
*/ |
|||
private Long createUserId; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
private Date createTime; |
|||
|
|||
} |
@ -0,0 +1,20 @@ |
|||
package com.boge.modules.car.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.modules.car.entity.CarEntity; |
|||
|
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:51:45 |
|||
*/ |
|||
public interface CarService extends IService<CarEntity> { |
|||
|
|||
PageUtils queryPage(Map<String, Object> params); |
|||
} |
|||
|
@ -0,0 +1,29 @@ |
|||
package com.boge.modules.car.service.impl; |
|||
|
|||
import org.springframework.stereotype.Service; |
|||
import java.util.Map; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.Query; |
|||
|
|||
import com.boge.modules.car.dao.CarDao; |
|||
import com.boge.modules.car.entity.CarEntity; |
|||
import com.boge.modules.car.service.CarService; |
|||
|
|||
|
|||
@Service("carService") |
|||
public class CarServiceImpl extends ServiceImpl<CarDao, CarEntity> implements CarService { |
|||
|
|||
@Override |
|||
public PageUtils queryPage(Map<String, Object> params) { |
|||
IPage<CarEntity> page = this.page( |
|||
new Query<CarEntity>().getPage(params), |
|||
new QueryWrapper<CarEntity>() |
|||
); |
|||
|
|||
return new PageUtils(page); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,89 @@ |
|||
package com.boge.modules.client.controller; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.Map; |
|||
|
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.PathVariable; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RequestParam; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import com.boge.modules.client.entity.ClientEntity; |
|||
import com.boge.modules.client.service.ClientService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.R; |
|||
|
|||
|
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:46:19 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("client/client") |
|||
public class ClientController { |
|||
@Autowired |
|||
private ClientService clientService; |
|||
|
|||
/** |
|||
* 列表 |
|||
*/ |
|||
@RequestMapping("/list") |
|||
//@RequiresPermissions("client:client:list")
|
|||
public R list(@RequestParam Map<String, Object> params){ |
|||
PageUtils page = clientService.queryPage(params); |
|||
|
|||
return R.ok().put("page", page); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 信息 |
|||
*/ |
|||
@RequestMapping("/info/{clientId}") |
|||
//@RequiresPermissions("client:client:info")
|
|||
public R info(@PathVariable("clientId") Long clientId){ |
|||
ClientEntity client = clientService.getById(clientId); |
|||
|
|||
return R.ok().put("client", client); |
|||
} |
|||
|
|||
/** |
|||
* 保存 |
|||
*/ |
|||
@RequestMapping("/save") |
|||
//@RequiresPermissions("client:client:save")
|
|||
public R save(@RequestBody ClientEntity client){ |
|||
clientService.save(client); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 修改 |
|||
*/ |
|||
@RequestMapping("/update") |
|||
//@RequiresPermissions("client:client:update")
|
|||
public R update(@RequestBody ClientEntity client){ |
|||
clientService.updateById(client); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 删除 |
|||
*/ |
|||
@RequestMapping("/delete") |
|||
//@RequiresPermissions("client:client:delete")
|
|||
public R delete(@RequestBody Long[] clientIds){ |
|||
clientService.removeByIds(Arrays.asList(clientIds)); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package com.boge.modules.client.dao; |
|||
|
|||
import com.boge.modules.client.entity.ClientEntity; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:46:19 |
|||
*/ |
|||
@Mapper |
|||
public interface ClientDao extends BaseMapper<ClientEntity> { |
|||
|
|||
} |
@ -0,0 +1,52 @@ |
|||
package com.boge.modules.client.entity; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableId; |
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:46:19 |
|||
*/ |
|||
@Data |
|||
@TableName("sys_client") |
|||
public class ClientEntity implements Serializable { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* id |
|||
*/ |
|||
@TableId |
|||
private Long clientId; |
|||
/** |
|||
* 客户名称 |
|||
*/ |
|||
private String clientName; |
|||
/** |
|||
* 法人代表 |
|||
*/ |
|||
private String juridicalPerson; |
|||
/** |
|||
* 地址 |
|||
*/ |
|||
private String address; |
|||
/** |
|||
* 行业 |
|||
*/ |
|||
private String industry; |
|||
/** |
|||
* 是否启用 |
|||
*/ |
|||
private Integer isOn; |
|||
/** |
|||
* 创建日期 |
|||
*/ |
|||
private Date createTime; |
|||
|
|||
} |
@ -0,0 +1,20 @@ |
|||
package com.boge.modules.client.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.modules.client.entity.ClientEntity; |
|||
|
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:46:19 |
|||
*/ |
|||
public interface ClientService extends IService<ClientEntity> { |
|||
|
|||
PageUtils queryPage(Map<String, Object> params); |
|||
} |
|||
|
@ -0,0 +1,29 @@ |
|||
package com.boge.modules.client.service.impl; |
|||
|
|||
import org.springframework.stereotype.Service; |
|||
import java.util.Map; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.Query; |
|||
|
|||
import com.boge.modules.client.dao.ClientDao; |
|||
import com.boge.modules.client.entity.ClientEntity; |
|||
import com.boge.modules.client.service.ClientService; |
|||
|
|||
|
|||
@Service("clientService") |
|||
public class ClientServiceImpl extends ServiceImpl<ClientDao, ClientEntity> implements ClientService { |
|||
|
|||
@Override |
|||
public PageUtils queryPage(Map<String, Object> params) { |
|||
IPage<ClientEntity> page = this.page( |
|||
new Query<ClientEntity>().getPage(params), |
|||
new QueryWrapper<ClientEntity>() |
|||
); |
|||
|
|||
return new PageUtils(page); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,89 @@ |
|||
package com.boge.modules.contract.controller; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.Map; |
|||
|
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.PathVariable; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RequestParam; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import com.boge.modules.contract.entity.ContractEntity; |
|||
import com.boge.modules.contract.service.ContractService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.R; |
|||
|
|||
|
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:33:35 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("flow/contract") |
|||
public class ContractController { |
|||
@Autowired |
|||
private ContractService contractService; |
|||
|
|||
/** |
|||
* 列表 |
|||
*/ |
|||
@RequestMapping("/list") |
|||
//@RequiresPermissions("flow:contract:list")
|
|||
public R list(@RequestParam Map<String, Object> params){ |
|||
PageUtils page = contractService.queryPage(params); |
|||
|
|||
return R.ok().put("page", page); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 信息 |
|||
*/ |
|||
@RequestMapping("/info/{contractId}") |
|||
//@RequiresPermissions("flow:contract:info")
|
|||
public R info(@PathVariable("contractId") Integer contractId){ |
|||
ContractEntity contract = contractService.getById(contractId); |
|||
|
|||
return R.ok().put("contract", contract); |
|||
} |
|||
|
|||
/** |
|||
* 保存 |
|||
*/ |
|||
@RequestMapping("/save") |
|||
//@RequiresPermissions("flow:contract:save")
|
|||
public R save(@RequestBody ContractEntity contract){ |
|||
contractService.save(contract); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 修改 |
|||
*/ |
|||
@RequestMapping("/update") |
|||
//@RequiresPermissions("flow:contract:update")
|
|||
public R update(@RequestBody ContractEntity contract){ |
|||
contractService.updateById(contract); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 删除 |
|||
*/ |
|||
@RequestMapping("/delete") |
|||
//@RequiresPermissions("flow:contract:delete")
|
|||
public R delete(@RequestBody Integer[] contractIds){ |
|||
contractService.removeByIds(Arrays.asList(contractIds)); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package com.boge.modules.contract.dao; |
|||
|
|||
import com.boge.modules.contract.entity.ContractEntity; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:33:35 |
|||
*/ |
|||
@Mapper |
|||
public interface ContractDao extends BaseMapper<ContractEntity> { |
|||
|
|||
} |
@ -0,0 +1,64 @@ |
|||
package com.boge.modules.contract.entity; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableId; |
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:33:35 |
|||
*/ |
|||
@Data |
|||
@TableName("sys_contract") |
|||
public class ContractEntity implements Serializable { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* id |
|||
*/ |
|||
@TableId |
|||
private Integer contractId; |
|||
/** |
|||
* 合同类型 |
|||
*/ |
|||
private Integer contractType; |
|||
/** |
|||
* 是否是主合同 |
|||
*/ |
|||
private Integer isMaster; |
|||
/** |
|||
* 合同编号 |
|||
*/ |
|||
private String contractNumber; |
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private Long clientId; |
|||
/** |
|||
* 物料信息 |
|||
*/ |
|||
private String materialJson; |
|||
/** |
|||
* 是否验收 |
|||
*/ |
|||
private Integer isAcceptance; |
|||
/** |
|||
* 创建日期 |
|||
*/ |
|||
private Date createTime; |
|||
/** |
|||
* 创建日期 |
|||
*/ |
|||
private Date acceptanceTime; |
|||
/** |
|||
* 备注 |
|||
*/ |
|||
private String remarks; |
|||
|
|||
} |
@ -0,0 +1,20 @@ |
|||
package com.boge.modules.contract.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.modules.contract.entity.ContractEntity; |
|||
|
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:33:35 |
|||
*/ |
|||
public interface ContractService extends IService<ContractEntity> { |
|||
|
|||
PageUtils queryPage(Map<String, Object> params); |
|||
} |
|||
|
@ -0,0 +1,29 @@ |
|||
package com.boge.modules.contract.service.impl; |
|||
|
|||
import org.springframework.stereotype.Service; |
|||
import java.util.Map; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.Query; |
|||
|
|||
import com.boge.modules.contract.dao.ContractDao; |
|||
import com.boge.modules.contract.entity.ContractEntity; |
|||
import com.boge.modules.contract.service.ContractService; |
|||
|
|||
|
|||
@Service("contractService") |
|||
public class ContractServiceImpl extends ServiceImpl<ContractDao, ContractEntity> implements ContractService { |
|||
|
|||
@Override |
|||
public PageUtils queryPage(Map<String, Object> params) { |
|||
IPage<ContractEntity> page = this.page( |
|||
new Query<ContractEntity>().getPage(params), |
|||
new QueryWrapper<ContractEntity>() |
|||
); |
|||
|
|||
return new PageUtils(page); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,89 @@ |
|||
package com.boge.modules.material.controller; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.Map; |
|||
|
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.PathVariable; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RequestParam; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import com.boge.modules.material.entity.MaterialEntity; |
|||
import com.boge.modules.material.service.MaterialService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.R; |
|||
|
|||
|
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 20:06:39 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("material/material") |
|||
public class MaterialController { |
|||
@Autowired |
|||
private MaterialService materialService; |
|||
|
|||
/** |
|||
* 列表 |
|||
*/ |
|||
@RequestMapping("/list") |
|||
//@RequiresPermissions("material:material:list")
|
|||
public R list(@RequestParam Map<String, Object> params){ |
|||
PageUtils page = materialService.queryPage(params); |
|||
|
|||
return R.ok().put("page", page); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 信息 |
|||
*/ |
|||
@RequestMapping("/info/{materialId}") |
|||
//@RequiresPermissions("material:material:info")
|
|||
public R info(@PathVariable("materialId") Long materialId){ |
|||
MaterialEntity material = materialService.getById(materialId); |
|||
|
|||
return R.ok().put("material", material); |
|||
} |
|||
|
|||
/** |
|||
* 保存 |
|||
*/ |
|||
@RequestMapping("/save") |
|||
//@RequiresPermissions("material:material:save")
|
|||
public R save(@RequestBody MaterialEntity material){ |
|||
materialService.save(material); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 修改 |
|||
*/ |
|||
@RequestMapping("/update") |
|||
//@RequiresPermissions("material:material:update")
|
|||
public R update(@RequestBody MaterialEntity material){ |
|||
materialService.updateById(material); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 删除 |
|||
*/ |
|||
@RequestMapping("/delete") |
|||
//@RequiresPermissions("material:material:delete")
|
|||
public R delete(@RequestBody Long[] materialIds){ |
|||
materialService.removeByIds(Arrays.asList(materialIds)); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package com.boge.modules.material.dao; |
|||
|
|||
import com.boge.modules.material.entity.MaterialEntity; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 20:06:39 |
|||
*/ |
|||
@Mapper |
|||
public interface MaterialDao extends BaseMapper<MaterialEntity> { |
|||
|
|||
} |
@ -0,0 +1,48 @@ |
|||
package com.boge.modules.material.entity; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableId; |
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 20:06:39 |
|||
*/ |
|||
@Data |
|||
@TableName("sys_material") |
|||
public class MaterialEntity implements Serializable { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* id |
|||
*/ |
|||
@TableId |
|||
private Long materialId; |
|||
/** |
|||
* 物料编码 |
|||
*/ |
|||
private String materialCode; |
|||
/** |
|||
* 物料名称 |
|||
*/ |
|||
private String materialName; |
|||
/** |
|||
* 物料类型 |
|||
*/ |
|||
private Integer materialType; |
|||
/** |
|||
* 是否启用 |
|||
*/ |
|||
private Integer isOn; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
private Date createTime; |
|||
|
|||
} |
@ -0,0 +1,20 @@ |
|||
package com.boge.modules.material.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.modules.material.entity.MaterialEntity; |
|||
|
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 20:06:39 |
|||
*/ |
|||
public interface MaterialService extends IService<MaterialEntity> { |
|||
|
|||
PageUtils queryPage(Map<String, Object> params); |
|||
} |
|||
|
@ -0,0 +1,29 @@ |
|||
package com.boge.modules.material.service.impl; |
|||
|
|||
import org.springframework.stereotype.Service; |
|||
import java.util.Map; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.Query; |
|||
|
|||
import com.boge.modules.material.dao.MaterialDao; |
|||
import com.boge.modules.material.entity.MaterialEntity; |
|||
import com.boge.modules.material.service.MaterialService; |
|||
|
|||
|
|||
@Service("materialService") |
|||
public class MaterialServiceImpl extends ServiceImpl<MaterialDao, MaterialEntity> implements MaterialService { |
|||
|
|||
@Override |
|||
public PageUtils queryPage(Map<String, Object> params) { |
|||
IPage<MaterialEntity> page = this.page( |
|||
new Query<MaterialEntity>().getPage(params), |
|||
new QueryWrapper<MaterialEntity>() |
|||
); |
|||
|
|||
return new PageUtils(page); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,89 @@ |
|||
package com.boge.modules.tickets.controller; |
|||
|
|||
import java.util.Arrays; |
|||
import java.util.Map; |
|||
|
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.PathVariable; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RequestParam; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import com.boge.modules.tickets.entity.TicketsEntity; |
|||
import com.boge.modules.tickets.service.TicketsService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.R; |
|||
|
|||
|
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:56:28 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("tickets/tickets") |
|||
public class TicketsController { |
|||
@Autowired |
|||
private TicketsService ticketsService; |
|||
|
|||
/** |
|||
* 列表 |
|||
*/ |
|||
@RequestMapping("/list") |
|||
//@RequiresPermissions("tickets:tickets:list")
|
|||
public R list(@RequestParam Map<String, Object> params){ |
|||
PageUtils page = ticketsService.queryPage(params); |
|||
|
|||
return R.ok().put("page", page); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 信息 |
|||
*/ |
|||
@RequestMapping("/info/{ticketsId}") |
|||
//@RequiresPermissions("tickets:tickets:info")
|
|||
public R info(@PathVariable("ticketsId") String ticketsId){ |
|||
TicketsEntity tickets = ticketsService.getById(ticketsId); |
|||
|
|||
return R.ok().put("tickets", tickets); |
|||
} |
|||
|
|||
/** |
|||
* 保存 |
|||
*/ |
|||
@RequestMapping("/save") |
|||
//@RequiresPermissions("tickets:tickets:save")
|
|||
public R save(@RequestBody TicketsEntity tickets){ |
|||
ticketsService.save(tickets); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 修改 |
|||
*/ |
|||
@RequestMapping("/update") |
|||
//@RequiresPermissions("tickets:tickets:update")
|
|||
public R update(@RequestBody TicketsEntity tickets){ |
|||
ticketsService.updateById(tickets); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
/** |
|||
* 删除 |
|||
*/ |
|||
@RequestMapping("/delete") |
|||
//@RequiresPermissions("tickets:tickets:delete")
|
|||
public R delete(@RequestBody String[] ticketsIds){ |
|||
ticketsService.removeByIds(Arrays.asList(ticketsIds)); |
|||
|
|||
return R.ok(); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,17 @@ |
|||
package com.boge.modules.tickets.dao; |
|||
|
|||
import com.boge.modules.tickets.entity.TicketsEntity; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:56:28 |
|||
*/ |
|||
@Mapper |
|||
public interface TicketsDao extends BaseMapper<TicketsEntity> { |
|||
|
|||
} |
@ -0,0 +1,64 @@ |
|||
package com.boge.modules.tickets.entity; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableId; |
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
|
|||
import java.io.Serializable; |
|||
import java.util.Date; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:56:28 |
|||
*/ |
|||
@Data |
|||
@TableName("sys_tickets") |
|||
public class TicketsEntity implements Serializable { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** |
|||
* 工单id |
|||
*/ |
|||
@TableId |
|||
private String ticketsId; |
|||
/** |
|||
* 小车类型 |
|||
*/ |
|||
private Integer carType; |
|||
/** |
|||
* 异常类型 |
|||
*/ |
|||
private Integer errorType; |
|||
/** |
|||
* 合同编号 |
|||
*/ |
|||
private String contractNumber; |
|||
/** |
|||
* 客户id |
|||
*/ |
|||
private Long clientId; |
|||
/** |
|||
* 故障描述 |
|||
*/ |
|||
private String description; |
|||
/** |
|||
* 部门对接人 |
|||
*/ |
|||
private String deptPeople; |
|||
/** |
|||
* 客户联系电话 |
|||
*/ |
|||
private String deptPhone; |
|||
/** |
|||
* 创建者ID |
|||
*/ |
|||
private Long createUserId; |
|||
/** |
|||
* 创建时间 |
|||
*/ |
|||
private Date createTime; |
|||
|
|||
} |
@ -0,0 +1,20 @@ |
|||
package com.boge.modules.tickets.service; |
|||
|
|||
import com.baomidou.mybatisplus.extension.service.IService; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.modules.tickets.entity.TicketsEntity; |
|||
|
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* |
|||
* |
|||
* @author ls |
|||
* @email dengpbs@163.com |
|||
* @date 2025-02-26 19:56:28 |
|||
*/ |
|||
public interface TicketsService extends IService<TicketsEntity> { |
|||
|
|||
PageUtils queryPage(Map<String, Object> params); |
|||
} |
|||
|
@ -0,0 +1,29 @@ |
|||
package com.boge.modules.tickets.service.impl; |
|||
|
|||
import org.springframework.stereotype.Service; |
|||
import java.util.Map; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import com.boge.common.utils.PageUtils; |
|||
import com.boge.common.utils.Query; |
|||
|
|||
import com.boge.modules.tickets.dao.TicketsDao; |
|||
import com.boge.modules.tickets.entity.TicketsEntity; |
|||
import com.boge.modules.tickets.service.TicketsService; |
|||
|
|||
|
|||
@Service("ticketsService") |
|||
public class TicketsServiceImpl extends ServiceImpl<TicketsDao, TicketsEntity> implements TicketsService { |
|||
|
|||
@Override |
|||
public PageUtils queryPage(Map<String, Object> params) { |
|||
IPage<TicketsEntity> page = this.page( |
|||
new Query<TicketsEntity>().getPage(params), |
|||
new QueryWrapper<TicketsEntity>() |
|||
); |
|||
|
|||
return new PageUtils(page); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,18 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.boge.modules.car.dao.CarDao"> |
|||
|
|||
<!-- 可根据自己的需求,是否要使用 --> |
|||
<resultMap type="com.boge.modules.car.entity.CarEntity" id="carMap"> |
|||
<result property="carId" column="car_id"/> |
|||
<result property="carName" column="car_name"/> |
|||
<result property="navigationType" column="navigation_type"/> |
|||
<result property="remarks" column="remarks"/> |
|||
<result property="isOn" column="is_on"/> |
|||
<result property="createUserId" column="create_user_id"/> |
|||
<result property="createTime" column="create_time"/> |
|||
</resultMap> |
|||
|
|||
|
|||
</mapper> |
@ -0,0 +1,18 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.boge.modules.client.dao.ClientDao"> |
|||
|
|||
<!-- 可根据自己的需求,是否要使用 --> |
|||
<resultMap type="com.boge.modules.client.entity.ClientEntity" id="clientMap"> |
|||
<result property="clientId" column="client_id"/> |
|||
<result property="clientName" column="client_name"/> |
|||
<result property="juridicalPerson" column="juridical_person"/> |
|||
<result property="address" column="address"/> |
|||
<result property="industry" column="industry"/> |
|||
<result property="isOn" column="is_on"/> |
|||
<result property="createTime" column="create_time"/> |
|||
</resultMap> |
|||
|
|||
|
|||
</mapper> |
@ -0,0 +1,21 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.boge.modules.contract.dao.ContractDao"> |
|||
|
|||
<!-- 可根据自己的需求,是否要使用 --> |
|||
<resultMap type="com.boge.modules.contract.entity.ContractEntity" id="contractMap"> |
|||
<result property="contractId" column="contract_id"/> |
|||
<result property="contractType" column="contract_type"/> |
|||
<result property="isMaster" column="is_master"/> |
|||
<result property="contractNumber" column="contract_number"/> |
|||
<result property="clientId" column="client_id"/> |
|||
<result property="materialJson" column="material_json"/> |
|||
<result property="isAcceptance" column="is_acceptance"/> |
|||
<result property="createTime" column="create_time"/> |
|||
<result property="acceptanceTime" column="acceptance_time"/> |
|||
<result property="remarks" column="remarks"/> |
|||
</resultMap> |
|||
|
|||
|
|||
</mapper> |
@ -0,0 +1,17 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.boge.modules.material.dao.MaterialDao"> |
|||
|
|||
<!-- 可根据自己的需求,是否要使用 --> |
|||
<resultMap type="com.boge.modules.material.entity.MaterialEntity" id="materialMap"> |
|||
<result property="materialId" column="material_id"/> |
|||
<result property="materialCode" column="material_code"/> |
|||
<result property="materialName" column="material_name"/> |
|||
<result property="materialType" column="material_type"/> |
|||
<result property="isOn" column="is_on"/> |
|||
<result property="createTime" column="create_time"/> |
|||
</resultMap> |
|||
|
|||
|
|||
</mapper> |
@ -0,0 +1,21 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.boge.modules.tickets.dao.TicketsDao"> |
|||
|
|||
<!-- 可根据自己的需求,是否要使用 --> |
|||
<resultMap type="com.boge.modules.tickets.entity.TicketsEntity" id="ticketsMap"> |
|||
<result property="ticketsId" column="tickets_id"/> |
|||
<result property="carType" column="car_type"/> |
|||
<result property="errorType" column="error_type"/> |
|||
<result property="contractNumber" column="contract_number"/> |
|||
<result property="clientId" column="client_id"/> |
|||
<result property="description" column="description"/> |
|||
<result property="deptPeople" column="dept_people"/> |
|||
<result property="deptPhone" column="dept_phone"/> |
|||
<result property="createUserId" column="create_user_id"/> |
|||
<result property="createTime" column="create_time"/> |
|||
</resultMap> |
|||
|
|||
|
|||
</mapper> |
@ -0,0 +1,18 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.boge.modules.car.dao.CarDao"> |
|||
|
|||
<!-- 可根据自己的需求,是否要使用 --> |
|||
<resultMap type="com.boge.modules.car.entity.CarEntity" id="carMap"> |
|||
<result property="carId" column="car_id"/> |
|||
<result property="carName" column="car_name"/> |
|||
<result property="navigationType" column="navigation_type"/> |
|||
<result property="remarks" column="remarks"/> |
|||
<result property="isOn" column="is_on"/> |
|||
<result property="createUserId" column="create_user_id"/> |
|||
<result property="createTime" column="create_time"/> |
|||
</resultMap> |
|||
|
|||
|
|||
</mapper> |
@ -0,0 +1,129 @@ |
|||
<template> |
|||
<el-dialog |
|||
:title="!dataForm.clientId ? '新增' : '修改'" |
|||
:close-on-click-modal="false" |
|||
:visible.sync="visible"> |
|||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px"> |
|||
<el-form-item label="客户名称" prop="clientName"> |
|||
<el-input v-model="dataForm.clientName" placeholder="客户名称"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="法人代表" prop="juridicalPerson"> |
|||
<el-input v-model="dataForm.juridicalPerson" placeholder="法人代表"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="地址" prop="address"> |
|||
<el-input v-model="dataForm.address" placeholder="地址"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="行业" prop="industry"> |
|||
<el-input v-model="dataForm.industry" placeholder="行业"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="是否启用" prop="isOn"> |
|||
<el-input v-model="dataForm.isOn" placeholder="是否启用"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="创建日期" prop="createTime"> |
|||
<el-input v-model="dataForm.createTime" placeholder="创建日期"></el-input> |
|||
</el-form-item> |
|||
</el-form> |
|||
<span slot="footer" class="dialog-footer"> |
|||
<el-button @click="visible = false">取消</el-button> |
|||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button> |
|||
</span> |
|||
</el-dialog> |
|||
</template> |
|||
|
|||
<script> |
|||
export default { |
|||
data () { |
|||
return { |
|||
visible: false, |
|||
dataForm: { |
|||
clientId: 0, |
|||
clientName: '', |
|||
juridicalPerson: '', |
|||
address: '', |
|||
industry: '', |
|||
isOn: '', |
|||
createTime: '' |
|||
}, |
|||
dataRule: { |
|||
clientName: [ |
|||
{ required: true, message: '客户名称不能为空', trigger: 'blur' } |
|||
], |
|||
juridicalPerson: [ |
|||
{ required: true, message: '法人代表不能为空', trigger: 'blur' } |
|||
], |
|||
address: [ |
|||
{ required: true, message: '地址不能为空', trigger: 'blur' } |
|||
], |
|||
industry: [ |
|||
{ required: true, message: '行业不能为空', trigger: 'blur' } |
|||
], |
|||
isOn: [ |
|||
{ required: true, message: '是否启用不能为空', trigger: 'blur' } |
|||
], |
|||
createTime: [ |
|||
{ required: true, message: '创建日期不能为空', trigger: 'blur' } |
|||
] |
|||
} |
|||
} |
|||
}, |
|||
methods: { |
|||
init (id) { |
|||
this.dataForm.clientId = id || 0 |
|||
this.visible = true |
|||
this.$nextTick(() => { |
|||
this.$refs['dataForm'].resetFields() |
|||
if (this.dataForm.clientId) { |
|||
this.$http({ |
|||
url: this.$http.adornUrl(`/client/client/info/${this.dataForm.clientId}`), |
|||
method: 'get', |
|||
params: this.$http.adornParams() |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.dataForm.clientName = data.client.clientName |
|||
this.dataForm.juridicalPerson = data.client.juridicalPerson |
|||
this.dataForm.address = data.client.address |
|||
this.dataForm.industry = data.client.industry |
|||
this.dataForm.isOn = data.client.isOn |
|||
this.dataForm.createTime = data.client.createTime |
|||
} |
|||
}) |
|||
} |
|||
}) |
|||
}, |
|||
// 表单提交 |
|||
dataFormSubmit () { |
|||
this.$refs['dataForm'].validate((valid) => { |
|||
if (valid) { |
|||
this.$http({ |
|||
url: this.$http.adornUrl(`/client/client/${!this.dataForm.clientId ? 'save' : 'update'}`), |
|||
method: 'post', |
|||
data: this.$http.adornData({ |
|||
'clientId': this.dataForm.clientId || undefined, |
|||
'clientName': this.dataForm.clientName, |
|||
'juridicalPerson': this.dataForm.juridicalPerson, |
|||
'address': this.dataForm.address, |
|||
'industry': this.dataForm.industry, |
|||
'isOn': this.dataForm.isOn, |
|||
'createTime': this.dataForm.createTime |
|||
}) |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.$message({ |
|||
message: '操作成功', |
|||
type: 'success', |
|||
duration: 1500, |
|||
onClose: () => { |
|||
this.visible = false |
|||
this.$emit('refreshDataList') |
|||
} |
|||
}) |
|||
} else { |
|||
this.$message.error(data.msg) |
|||
} |
|||
}) |
|||
} |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
</script> |
@ -0,0 +1,193 @@ |
|||
<template> |
|||
<div class="mod-config"> |
|||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> |
|||
<el-form-item> |
|||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button @click="getDataList()">查询</el-button> |
|||
<el-button v-if="isAuth('client:client:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button> |
|||
<el-button v-if="isAuth('client:client:delete')" type="danger" @click="deleteHandle()" :disabled="dataListSelections.length <= 0">批量删除</el-button> |
|||
</el-form-item> |
|||
</el-form> |
|||
<el-table |
|||
:data="dataList" |
|||
border |
|||
v-loading="dataListLoading" |
|||
@selection-change="selectionChangeHandle" |
|||
style="width: 100%;"> |
|||
<el-table-column |
|||
type="selection" |
|||
header-align="center" |
|||
align="center" |
|||
width="50"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="clientId" |
|||
header-align="center" |
|||
align="center" |
|||
label="id"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="clientName" |
|||
header-align="center" |
|||
align="center" |
|||
label="客户名称"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="juridicalPerson" |
|||
header-align="center" |
|||
align="center" |
|||
label="法人代表"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="address" |
|||
header-align="center" |
|||
align="center" |
|||
label="地址"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="industry" |
|||
header-align="center" |
|||
align="center" |
|||
label="行业"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="isOn" |
|||
header-align="center" |
|||
align="center" |
|||
label="是否启用"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="createTime" |
|||
header-align="center" |
|||
align="center" |
|||
label="创建日期"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
fixed="right" |
|||
header-align="center" |
|||
align="center" |
|||
width="150" |
|||
label="操作"> |
|||
<template slot-scope="scope"> |
|||
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.clientId)">修改</el-button> |
|||
<el-button type="text" size="small" @click="deleteHandle(scope.row.clientId)">删除</el-button> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<el-pagination |
|||
@size-change="sizeChangeHandle" |
|||
@current-change="currentChangeHandle" |
|||
:current-page="pageIndex" |
|||
:page-sizes="[10, 20, 50, 100]" |
|||
:page-size="pageSize" |
|||
:total="totalPage" |
|||
layout="total, sizes, prev, pager, next, jumper"> |
|||
</el-pagination> |
|||
<!-- 弹窗, 新增 / 修改 --> |
|||
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import AddOrUpdate from './client-add-or-update' |
|||
export default { |
|||
data () { |
|||
return { |
|||
dataForm: { |
|||
key: '' |
|||
}, |
|||
dataList: [], |
|||
pageIndex: 1, |
|||
pageSize: 10, |
|||
totalPage: 0, |
|||
dataListLoading: false, |
|||
dataListSelections: [], |
|||
addOrUpdateVisible: false |
|||
} |
|||
}, |
|||
components: { |
|||
AddOrUpdate |
|||
}, |
|||
activated () { |
|||
this.getDataList() |
|||
}, |
|||
methods: { |
|||
// 获取数据列表 |
|||
getDataList () { |
|||
this.dataListLoading = true |
|||
this.$http({ |
|||
url: this.$http.adornUrl('/client/client/list'), |
|||
method: 'get', |
|||
params: this.$http.adornParams({ |
|||
'page': this.pageIndex, |
|||
'limit': this.pageSize, |
|||
'key': this.dataForm.key |
|||
}) |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.dataList = data.page.list |
|||
this.totalPage = data.page.totalCount |
|||
} else { |
|||
this.dataList = [] |
|||
this.totalPage = 0 |
|||
} |
|||
this.dataListLoading = false |
|||
}) |
|||
}, |
|||
// 每页数 |
|||
sizeChangeHandle (val) { |
|||
this.pageSize = val |
|||
this.pageIndex = 1 |
|||
this.getDataList() |
|||
}, |
|||
// 当前页 |
|||
currentChangeHandle (val) { |
|||
this.pageIndex = val |
|||
this.getDataList() |
|||
}, |
|||
// 多选 |
|||
selectionChangeHandle (val) { |
|||
this.dataListSelections = val |
|||
}, |
|||
// 新增 / 修改 |
|||
addOrUpdateHandle (id) { |
|||
this.addOrUpdateVisible = true |
|||
this.$nextTick(() => { |
|||
this.$refs.addOrUpdate.init(id) |
|||
}) |
|||
}, |
|||
// 删除 |
|||
deleteHandle (id) { |
|||
var ids = id ? [id] : this.dataListSelections.map(item => { |
|||
return item.clientId |
|||
}) |
|||
this.$confirm(`确定对[id=${ids.join(',')}]进行[${id ? '删除' : '批量删除'}]操作?`, '提示', { |
|||
confirmButtonText: '确定', |
|||
cancelButtonText: '取消', |
|||
type: 'warning' |
|||
}).then(() => { |
|||
this.$http({ |
|||
url: this.$http.adornUrl('/client/client/delete'), |
|||
method: 'post', |
|||
data: this.$http.adornData(ids, false) |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.$message({ |
|||
message: '操作成功', |
|||
type: 'success', |
|||
duration: 1500, |
|||
onClose: () => { |
|||
this.getDataList() |
|||
} |
|||
}) |
|||
} else { |
|||
this.$message.error(data.msg) |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
</script> |
@ -0,0 +1,21 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
|
|||
<mapper namespace="com.boge.modules.contract.dao.ContractDao"> |
|||
|
|||
<!-- 可根据自己的需求,是否要使用 --> |
|||
<resultMap type="com.boge.modules.contract.entity.ContractEntity" id="contractMap"> |
|||
<result property="contractId" column="contract_id"/> |
|||
<result property="contractType" column="contract_type"/> |
|||
<result property="isMaster" column="is_master"/> |
|||
<result property="contractNumber" column="contract_number"/> |
|||
<result property="clientId" column="client_id"/> |
|||
<result property="materialJson" column="material_json"/> |
|||
<result property="isAcceptance" column="is_acceptance"/> |
|||
<result property="createTime" column="create_time"/> |
|||
<result property="acceptanceTime" column="acceptance_time"/> |
|||
<result property="remarks" column="remarks"/> |
|||
</resultMap> |
|||
|
|||
|
|||
</mapper> |
@ -0,0 +1,120 @@ |
|||
<template> |
|||
<el-dialog |
|||
:title="!dataForm.materialId ? '新增' : '修改'" |
|||
:close-on-click-modal="false" |
|||
:visible.sync="visible"> |
|||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px"> |
|||
<el-form-item label="物料编码" prop="materialCode"> |
|||
<el-input v-model="dataForm.materialCode" placeholder="物料编码"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="物料名称" prop="materialName"> |
|||
<el-input v-model="dataForm.materialName" placeholder="物料名称"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="物料类型" prop="materialType"> |
|||
<el-input v-model="dataForm.materialType" placeholder="物料类型"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="是否启用" prop="isOn"> |
|||
<el-input v-model="dataForm.isOn" placeholder="是否启用"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="创建时间" prop="createTime"> |
|||
<el-input v-model="dataForm.createTime" placeholder="创建时间"></el-input> |
|||
</el-form-item> |
|||
</el-form> |
|||
<span slot="footer" class="dialog-footer"> |
|||
<el-button @click="visible = false">取消</el-button> |
|||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button> |
|||
</span> |
|||
</el-dialog> |
|||
</template> |
|||
|
|||
<script> |
|||
export default { |
|||
data () { |
|||
return { |
|||
visible: false, |
|||
dataForm: { |
|||
materialId: 0, |
|||
materialCode: '', |
|||
materialName: '', |
|||
materialType: '', |
|||
isOn: '', |
|||
createTime: '' |
|||
}, |
|||
dataRule: { |
|||
materialCode: [ |
|||
{ required: true, message: '物料编码不能为空', trigger: 'blur' } |
|||
], |
|||
materialName: [ |
|||
{ required: true, message: '物料名称不能为空', trigger: 'blur' } |
|||
], |
|||
materialType: [ |
|||
{ required: true, message: '物料类型不能为空', trigger: 'blur' } |
|||
], |
|||
isOn: [ |
|||
{ required: true, message: '是否启用不能为空', trigger: 'blur' } |
|||
], |
|||
createTime: [ |
|||
{ required: true, message: '创建时间不能为空', trigger: 'blur' } |
|||
] |
|||
} |
|||
} |
|||
}, |
|||
methods: { |
|||
init (id) { |
|||
this.dataForm.materialId = id || 0 |
|||
this.visible = true |
|||
this.$nextTick(() => { |
|||
this.$refs['dataForm'].resetFields() |
|||
if (this.dataForm.materialId) { |
|||
this.$http({ |
|||
url: this.$http.adornUrl(`/material/material/info/${this.dataForm.materialId}`), |
|||
method: 'get', |
|||
params: this.$http.adornParams() |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.dataForm.materialCode = data.material.materialCode |
|||
this.dataForm.materialName = data.material.materialName |
|||
this.dataForm.materialType = data.material.materialType |
|||
this.dataForm.isOn = data.material.isOn |
|||
this.dataForm.createTime = data.material.createTime |
|||
} |
|||
}) |
|||
} |
|||
}) |
|||
}, |
|||
// 表单提交 |
|||
dataFormSubmit () { |
|||
this.$refs['dataForm'].validate((valid) => { |
|||
if (valid) { |
|||
this.$http({ |
|||
url: this.$http.adornUrl(`/material/material/${!this.dataForm.materialId ? 'save' : 'update'}`), |
|||
method: 'post', |
|||
data: this.$http.adornData({ |
|||
'materialId': this.dataForm.materialId || undefined, |
|||
'materialCode': this.dataForm.materialCode, |
|||
'materialName': this.dataForm.materialName, |
|||
'materialType': this.dataForm.materialType, |
|||
'isOn': this.dataForm.isOn, |
|||
'createTime': this.dataForm.createTime |
|||
}) |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.$message({ |
|||
message: '操作成功', |
|||
type: 'success', |
|||
duration: 1500, |
|||
onClose: () => { |
|||
this.visible = false |
|||
this.$emit('refreshDataList') |
|||
} |
|||
}) |
|||
} else { |
|||
this.$message.error(data.msg) |
|||
} |
|||
}) |
|||
} |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
</script> |
@ -0,0 +1,187 @@ |
|||
<template> |
|||
<div class="mod-config"> |
|||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> |
|||
<el-form-item> |
|||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button @click="getDataList()">查询</el-button> |
|||
<el-button v-if="isAuth('material:material:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button> |
|||
<el-button v-if="isAuth('material:material:delete')" type="danger" @click="deleteHandle()" :disabled="dataListSelections.length <= 0">批量删除</el-button> |
|||
</el-form-item> |
|||
</el-form> |
|||
<el-table |
|||
:data="dataList" |
|||
border |
|||
v-loading="dataListLoading" |
|||
@selection-change="selectionChangeHandle" |
|||
style="width: 100%;"> |
|||
<el-table-column |
|||
type="selection" |
|||
header-align="center" |
|||
align="center" |
|||
width="50"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="materialId" |
|||
header-align="center" |
|||
align="center" |
|||
label="id"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="materialCode" |
|||
header-align="center" |
|||
align="center" |
|||
label="物料编码"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="materialName" |
|||
header-align="center" |
|||
align="center" |
|||
label="物料名称"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="materialType" |
|||
header-align="center" |
|||
align="center" |
|||
label="物料类型"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="isOn" |
|||
header-align="center" |
|||
align="center" |
|||
label="是否启用"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="createTime" |
|||
header-align="center" |
|||
align="center" |
|||
label="创建时间"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
fixed="right" |
|||
header-align="center" |
|||
align="center" |
|||
width="150" |
|||
label="操作"> |
|||
<template slot-scope="scope"> |
|||
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.materialId)">修改</el-button> |
|||
<el-button type="text" size="small" @click="deleteHandle(scope.row.materialId)">删除</el-button> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<el-pagination |
|||
@size-change="sizeChangeHandle" |
|||
@current-change="currentChangeHandle" |
|||
:current-page="pageIndex" |
|||
:page-sizes="[10, 20, 50, 100]" |
|||
:page-size="pageSize" |
|||
:total="totalPage" |
|||
layout="total, sizes, prev, pager, next, jumper"> |
|||
</el-pagination> |
|||
<!-- 弹窗, 新增 / 修改 --> |
|||
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import AddOrUpdate from './material-add-or-update' |
|||
export default { |
|||
data () { |
|||
return { |
|||
dataForm: { |
|||
key: '' |
|||
}, |
|||
dataList: [], |
|||
pageIndex: 1, |
|||
pageSize: 10, |
|||
totalPage: 0, |
|||
dataListLoading: false, |
|||
dataListSelections: [], |
|||
addOrUpdateVisible: false |
|||
} |
|||
}, |
|||
components: { |
|||
AddOrUpdate |
|||
}, |
|||
activated () { |
|||
this.getDataList() |
|||
}, |
|||
methods: { |
|||
// 获取数据列表 |
|||
getDataList () { |
|||
this.dataListLoading = true |
|||
this.$http({ |
|||
url: this.$http.adornUrl('/material/material/list'), |
|||
method: 'get', |
|||
params: this.$http.adornParams({ |
|||
'page': this.pageIndex, |
|||
'limit': this.pageSize, |
|||
'key': this.dataForm.key |
|||
}) |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.dataList = data.page.list |
|||
this.totalPage = data.page.totalCount |
|||
} else { |
|||
this.dataList = [] |
|||
this.totalPage = 0 |
|||
} |
|||
this.dataListLoading = false |
|||
}) |
|||
}, |
|||
// 每页数 |
|||
sizeChangeHandle (val) { |
|||
this.pageSize = val |
|||
this.pageIndex = 1 |
|||
this.getDataList() |
|||
}, |
|||
// 当前页 |
|||
currentChangeHandle (val) { |
|||
this.pageIndex = val |
|||
this.getDataList() |
|||
}, |
|||
// 多选 |
|||
selectionChangeHandle (val) { |
|||
this.dataListSelections = val |
|||
}, |
|||
// 新增 / 修改 |
|||
addOrUpdateHandle (id) { |
|||
this.addOrUpdateVisible = true |
|||
this.$nextTick(() => { |
|||
this.$refs.addOrUpdate.init(id) |
|||
}) |
|||
}, |
|||
// 删除 |
|||
deleteHandle (id) { |
|||
var ids = id ? [id] : this.dataListSelections.map(item => { |
|||
return item.materialId |
|||
}) |
|||
this.$confirm(`确定对[id=${ids.join(',')}]进行[${id ? '删除' : '批量删除'}]操作?`, '提示', { |
|||
confirmButtonText: '确定', |
|||
cancelButtonText: '取消', |
|||
type: 'warning' |
|||
}).then(() => { |
|||
this.$http({ |
|||
url: this.$http.adornUrl('/material/material/delete'), |
|||
method: 'post', |
|||
data: this.$http.adornData(ids, false) |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.$message({ |
|||
message: '操作成功', |
|||
type: 'success', |
|||
duration: 1500, |
|||
onClose: () => { |
|||
this.getDataList() |
|||
} |
|||
}) |
|||
} else { |
|||
this.$message.error(data.msg) |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
</script> |
@ -0,0 +1,156 @@ |
|||
<template> |
|||
<el-dialog |
|||
:title="!dataForm.ticketsId ? '新增' : '修改'" |
|||
:close-on-click-modal="false" |
|||
:visible.sync="visible"> |
|||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px"> |
|||
<el-form-item label="小车类型" prop="carType"> |
|||
<el-input v-model="dataForm.carType" placeholder="小车类型"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="异常类型" prop="errorType"> |
|||
<el-input v-model="dataForm.errorType" placeholder="异常类型"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="合同编号" prop="contractNumber"> |
|||
<el-input v-model="dataForm.contractNumber" placeholder="合同编号"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="客户id" prop="clientId"> |
|||
<el-input v-model="dataForm.clientId" placeholder="客户id"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="故障描述" prop="description"> |
|||
<el-input v-model="dataForm.description" placeholder="故障描述"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="部门对接人" prop="deptPeople"> |
|||
<el-input v-model="dataForm.deptPeople" placeholder="部门对接人"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="客户联系电话" prop="deptPhone"> |
|||
<el-input v-model="dataForm.deptPhone" placeholder="客户联系电话"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="创建者ID" prop="createUserId"> |
|||
<el-input v-model="dataForm.createUserId" placeholder="创建者ID"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="创建时间" prop="createTime"> |
|||
<el-input v-model="dataForm.createTime" placeholder="创建时间"></el-input> |
|||
</el-form-item> |
|||
</el-form> |
|||
<span slot="footer" class="dialog-footer"> |
|||
<el-button @click="visible = false">取消</el-button> |
|||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button> |
|||
</span> |
|||
</el-dialog> |
|||
</template> |
|||
|
|||
<script> |
|||
export default { |
|||
data () { |
|||
return { |
|||
visible: false, |
|||
dataForm: { |
|||
ticketsId: 0, |
|||
carType: '', |
|||
errorType: '', |
|||
contractNumber: '', |
|||
clientId: '', |
|||
description: '', |
|||
deptPeople: '', |
|||
deptPhone: '', |
|||
createUserId: '', |
|||
createTime: '' |
|||
}, |
|||
dataRule: { |
|||
carType: [ |
|||
{ required: true, message: '小车类型不能为空', trigger: 'blur' } |
|||
], |
|||
errorType: [ |
|||
{ required: true, message: '异常类型不能为空', trigger: 'blur' } |
|||
], |
|||
contractNumber: [ |
|||
{ required: true, message: '合同编号不能为空', trigger: 'blur' } |
|||
], |
|||
clientId: [ |
|||
{ required: true, message: '客户id不能为空', trigger: 'blur' } |
|||
], |
|||
description: [ |
|||
{ required: true, message: '故障描述不能为空', trigger: 'blur' } |
|||
], |
|||
deptPeople: [ |
|||
{ required: true, message: '部门对接人不能为空', trigger: 'blur' } |
|||
], |
|||
deptPhone: [ |
|||
{ required: true, message: '客户联系电话不能为空', trigger: 'blur' } |
|||
], |
|||
createUserId: [ |
|||
{ required: true, message: '创建者ID不能为空', trigger: 'blur' } |
|||
], |
|||
createTime: [ |
|||
{ required: true, message: '创建时间不能为空', trigger: 'blur' } |
|||
] |
|||
} |
|||
} |
|||
}, |
|||
methods: { |
|||
init (id) { |
|||
this.dataForm.ticketsId = id || 0 |
|||
this.visible = true |
|||
this.$nextTick(() => { |
|||
this.$refs['dataForm'].resetFields() |
|||
if (this.dataForm.ticketsId) { |
|||
this.$http({ |
|||
url: this.$http.adornUrl(`/tickets/tickets/info/${this.dataForm.ticketsId}`), |
|||
method: 'get', |
|||
params: this.$http.adornParams() |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.dataForm.carType = data.tickets.carType |
|||
this.dataForm.errorType = data.tickets.errorType |
|||
this.dataForm.contractNumber = data.tickets.contractNumber |
|||
this.dataForm.clientId = data.tickets.clientId |
|||
this.dataForm.description = data.tickets.description |
|||
this.dataForm.deptPeople = data.tickets.deptPeople |
|||
this.dataForm.deptPhone = data.tickets.deptPhone |
|||
this.dataForm.createUserId = data.tickets.createUserId |
|||
this.dataForm.createTime = data.tickets.createTime |
|||
} |
|||
}) |
|||
} |
|||
}) |
|||
}, |
|||
// 表单提交 |
|||
dataFormSubmit () { |
|||
this.$refs['dataForm'].validate((valid) => { |
|||
if (valid) { |
|||
this.$http({ |
|||
url: this.$http.adornUrl(`/tickets/tickets/${!this.dataForm.ticketsId ? 'save' : 'update'}`), |
|||
method: 'post', |
|||
data: this.$http.adornData({ |
|||
'ticketsId': this.dataForm.ticketsId || undefined, |
|||
'carType': this.dataForm.carType, |
|||
'errorType': this.dataForm.errorType, |
|||
'contractNumber': this.dataForm.contractNumber, |
|||
'clientId': this.dataForm.clientId, |
|||
'description': this.dataForm.description, |
|||
'deptPeople': this.dataForm.deptPeople, |
|||
'deptPhone': this.dataForm.deptPhone, |
|||
'createUserId': this.dataForm.createUserId, |
|||
'createTime': this.dataForm.createTime |
|||
}) |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.$message({ |
|||
message: '操作成功', |
|||
type: 'success', |
|||
duration: 1500, |
|||
onClose: () => { |
|||
this.visible = false |
|||
this.$emit('refreshDataList') |
|||
} |
|||
}) |
|||
} else { |
|||
this.$message.error(data.msg) |
|||
} |
|||
}) |
|||
} |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
</script> |
@ -0,0 +1,211 @@ |
|||
<template> |
|||
<div class="mod-config"> |
|||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> |
|||
<el-form-item> |
|||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button @click="getDataList()">查询</el-button> |
|||
<el-button v-if="isAuth('tickets:tickets:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button> |
|||
<el-button v-if="isAuth('tickets:tickets:delete')" type="danger" @click="deleteHandle()" :disabled="dataListSelections.length <= 0">批量删除</el-button> |
|||
</el-form-item> |
|||
</el-form> |
|||
<el-table |
|||
:data="dataList" |
|||
border |
|||
v-loading="dataListLoading" |
|||
@selection-change="selectionChangeHandle" |
|||
style="width: 100%;"> |
|||
<el-table-column |
|||
type="selection" |
|||
header-align="center" |
|||
align="center" |
|||
width="50"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="ticketsId" |
|||
header-align="center" |
|||
align="center" |
|||
label="工单id"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="carType" |
|||
header-align="center" |
|||
align="center" |
|||
label="小车类型"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="errorType" |
|||
header-align="center" |
|||
align="center" |
|||
label="异常类型"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="contractNumber" |
|||
header-align="center" |
|||
align="center" |
|||
label="合同编号"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="clientId" |
|||
header-align="center" |
|||
align="center" |
|||
label="客户id"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="description" |
|||
header-align="center" |
|||
align="center" |
|||
label="故障描述"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="deptPeople" |
|||
header-align="center" |
|||
align="center" |
|||
label="部门对接人"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="deptPhone" |
|||
header-align="center" |
|||
align="center" |
|||
label="客户联系电话"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="createUserId" |
|||
header-align="center" |
|||
align="center" |
|||
label="创建者ID"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="createTime" |
|||
header-align="center" |
|||
align="center" |
|||
label="创建时间"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
fixed="right" |
|||
header-align="center" |
|||
align="center" |
|||
width="150" |
|||
label="操作"> |
|||
<template slot-scope="scope"> |
|||
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.ticketsId)">修改</el-button> |
|||
<el-button type="text" size="small" @click="deleteHandle(scope.row.ticketsId)">删除</el-button> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<el-pagination |
|||
@size-change="sizeChangeHandle" |
|||
@current-change="currentChangeHandle" |
|||
:current-page="pageIndex" |
|||
:page-sizes="[10, 20, 50, 100]" |
|||
:page-size="pageSize" |
|||
:total="totalPage" |
|||
layout="total, sizes, prev, pager, next, jumper"> |
|||
</el-pagination> |
|||
<!-- 弹窗, 新增 / 修改 --> |
|||
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import AddOrUpdate from './tickets-add-or-update' |
|||
export default { |
|||
data () { |
|||
return { |
|||
dataForm: { |
|||
key: '' |
|||
}, |
|||
dataList: [], |
|||
pageIndex: 1, |
|||
pageSize: 10, |
|||
totalPage: 0, |
|||
dataListLoading: false, |
|||
dataListSelections: [], |
|||
addOrUpdateVisible: false |
|||
} |
|||
}, |
|||
components: { |
|||
AddOrUpdate |
|||
}, |
|||
activated () { |
|||
this.getDataList() |
|||
}, |
|||
methods: { |
|||
// 获取数据列表 |
|||
getDataList () { |
|||
this.dataListLoading = true |
|||
this.$http({ |
|||
url: this.$http.adornUrl('/tickets/tickets/list'), |
|||
method: 'get', |
|||
params: this.$http.adornParams({ |
|||
'page': this.pageIndex, |
|||
'limit': this.pageSize, |
|||
'key': this.dataForm.key |
|||
}) |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.dataList = data.page.list |
|||
this.totalPage = data.page.totalCount |
|||
} else { |
|||
this.dataList = [] |
|||
this.totalPage = 0 |
|||
} |
|||
this.dataListLoading = false |
|||
}) |
|||
}, |
|||
// 每页数 |
|||
sizeChangeHandle (val) { |
|||
this.pageSize = val |
|||
this.pageIndex = 1 |
|||
this.getDataList() |
|||
}, |
|||
// 当前页 |
|||
currentChangeHandle (val) { |
|||
this.pageIndex = val |
|||
this.getDataList() |
|||
}, |
|||
// 多选 |
|||
selectionChangeHandle (val) { |
|||
this.dataListSelections = val |
|||
}, |
|||
// 新增 / 修改 |
|||
addOrUpdateHandle (id) { |
|||
this.addOrUpdateVisible = true |
|||
this.$nextTick(() => { |
|||
this.$refs.addOrUpdate.init(id) |
|||
}) |
|||
}, |
|||
// 删除 |
|||
deleteHandle (id) { |
|||
var ids = id ? [id] : this.dataListSelections.map(item => { |
|||
return item.ticketsId |
|||
}) |
|||
this.$confirm(`确定对[id=${ids.join(',')}]进行[${id ? '删除' : '批量删除'}]操作?`, '提示', { |
|||
confirmButtonText: '确定', |
|||
cancelButtonText: '取消', |
|||
type: 'warning' |
|||
}).then(() => { |
|||
this.$http({ |
|||
url: this.$http.adornUrl('/tickets/tickets/delete'), |
|||
method: 'post', |
|||
data: this.$http.adornData(ids, false) |
|||
}).then(({data}) => { |
|||
if (data && data.code === 0) { |
|||
this.$message({ |
|||
message: '操作成功', |
|||
type: 'success', |
|||
duration: 1500, |
|||
onClose: () => { |
|||
this.getDataList() |
|||
} |
|||
}) |
|||
} else { |
|||
this.$message.error(data.msg) |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
</script> |
Loading…
Reference in new issue