Commit 23b8b821 authored by 谢希宇's avatar 谢希宇

Submit by Strive

Date 2021/03/16
parent 13b79a44
......@@ -56,12 +56,12 @@
<section class="content-header">
<h1>
身份验证管理
<small>身份验证</small>
临床患者管理
<small>临床患者</small>
</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i>首页</a></li>
<li><a class="active">身份验证</a></li>
<li><a class="active">临床患者</a></li>
</ol>
</section>
......
......@@ -60,12 +60,12 @@
<section class="content-header">
<h1>
身份验证管理
<small>身份验证</small>
临床患者管理
<small>临床患者</small>
</h1>
<ol class="breadcrumb">
<li><a><i class="fa fa-dashboard"></i>首页</a></li>
<li><a class="active">身份验证管理列表</a></li>
<li><a class="active">临床患者管理列表</a></li>
</ol>
</section>
......@@ -98,7 +98,7 @@
<td hidden="true">Id</td>
<th>姓名</th>
<th>身份证号码</th>
<th>描述</th>
<th>患者类型</th>
<th>创建时间</th>
<th>操作</th>
</tr>
......@@ -207,7 +207,7 @@
"mData": "idCard"
},
{
"mData": "description"
"mData": "status"
},
{
"mData": "createTime"
......@@ -220,13 +220,24 @@
'visible': false,
'targets': [0]
},
{
"aTargets": [3],
"mData": "status",
"mRender": function (a, b, c, d) {
if (a == '0') {
return "<span>三期</span>";
} else if (a == '1') {
return "<span>四期</span>";
} else {
return "";
}
}
},
{
"aTargets": [4],
"mData": "createTime",
"mRender": function (a, b, c, d) {
return formatDates(a, "yyyy-MM-dd HH:mm:ss");
}
},
{
......
......@@ -20,21 +20,20 @@ public class Authentication implements Serializable {
@ExportConfig(value = "姓名", width = 100)
private String name;
/* 身份证号码 */
@ExportConfig(value = "身份证号码", width = 100)
@ExportConfig(value = "身份证号码", width = 150)
private String idCard;
/* 所属的账号 */
private Long accountsId;
/* 删除标识 */
private boolean delFlag;
/* 状态 */
@ExportConfig(value = "患者类型(0:三期;1:四期)", width = 200)
private String status;
/* 更新时间 */
private Date updateTime;
/* 备注 */
@ExportConfig(value = "描述")
@ExportConfig(value = "描述", width = 150)
private String description;
/* 创建时间 */
@ExportConfig(value = "创建时间",width = 150, showLevel = 1, dateFormat = "yyyy-MM-dd HH:mm")
private Date createTime;
......
......@@ -146,6 +146,18 @@ public class AuthenticationController {
}
Sort sort = new Sort("create_time", OrderType.DESC);
List<Authentication> list = authenticationService.fetchSearchByPage(conds, sort, 0, 0);
list.forEach(item -> {
switch (item.getStatus()) {
case "0":
item.setStatus("三期");
break;
case "1":
item.setStatus("四期");
break;
default:
item.setStatus("");
}
});
ExcelKit.$Export(Authentication.class, response).toExcel(list, "身份验证信息");
}
......@@ -187,29 +199,24 @@ public class AuthenticationController {
if (!StringUtils.isEmpty(rowData.get(1))) {
if (rowData.get(1).length() == 15 || rowData.get(1).length() == 18){
authentication.setIdCard(rowData.get(1));
}else{
sb.append(rowData.get(0)+",");
return;
}
}
if (!StringUtils.isEmpty(rowData.get(2))) {
authentication.setDescription(rowData.get(2));
authentication.setStatus(rowData.get(2));
}
if (!StringUtils.isEmpty(rowData.get(3))) {
authentication.setDescription(rowData.get(3));
}
if (!StringUtils.isEmpty(authentication.getIdCard())) {
authenticationService.save(authentication);
}
authenticationService.save(authentication);
});
} catch (IOException e) {
retJson.put("errorNo", "1");
log.error(e.getMessage());
}
retJson.put("errorNo", "0");
if(sb.length() > 0){
retJson.put("errorMsg","部分导入失败,原因:未填写正确的身份证号码,导入失败名称:"+sb.toString());
}else{
retJson.put("errorMsg", "导入成功");
}
retJson.put("errorMsg", "导入成功");
return retJson;
}
......
......@@ -100,9 +100,9 @@
<td hidden="true">Id</td>
<th>检测券名称</th>
<th>有效期(年)</th>
<th>有效期(</th>
<th>第一张券延期使用(</th>
<th>第二章券延期使用(</th>
<th>有效期(</th>
<th>第一张券延期使用(</th>
<th>第二章券延期使用(</th>
<th>描述</th>
<th>使用说明</th>
<th>创建时间</th>
......
......@@ -69,7 +69,7 @@ public class QrcodeUtil {
String mediaPath = contents + "." + LOGO_FORMAT;
//生成对应文件
File outputFile = new File(path + File.separator + contents + "." + LOGO_FORMAT);
if (MatrixToImageWriter.writeToFile(bitMatrix, LOGO_FORMAT, outputFile, true)) {
if (MatrixToImageWriter.writeToFile(bitMatrix, LOGO_FORMAT, outputFile, false)) {
return DOMAIN_NAME + QECODE_URL.replace("{PICFILENAME}", mediaPath);
}
return null;
......
......@@ -65,7 +65,7 @@ public class CheckcouponController {
Checkcoupon checkcoupon = checkcouponService.fetchById(id);
model.addAttribute("data", checkcoupon);
}
model.addAttribute("pageType", pageType.equals("View") ? true : false);//是否查看页面
model.addAttribute("pageType", StringUtils.equals(pageType, "View") ? true : false);//是否查看页面
return "checkcoupon/checkcouponform";
}
......
......@@ -94,6 +94,27 @@
#if($!{pageType} == 'true') readonly="readonly" #elseif($!{edit} == 'true') readonly="readonly" #end />
</div>
<div class="form-group form-md-line-input col-xs-6">
<label>所属实验室</label>
#if ($!{pageType} == 'true')
<input type="text"
class="form-control" value="$!{data.orgName}"
readonly="readonly"
maxlength="50" placeholder="所属实验室"/>
#else
<div class="input-group">
<input type="text" name="orgName" id="orgName" #if ($!{pageType}=='true') value="$!{data.orgName}" #else value="$!{orgUnit.orgName}" #end
class="form-control" disabled>
<input type="text" id="checkedBy" name="checkedBy" #if ($!{pageType}=='true') value="$!{data.checkedBy}" #else value="$!{orgUnit.id}" #end
class="form-control" style="display: none">
<span class="input-group-btn selOrg">
<button type="button" name="selOrg" id="selOrg"
class="btn btn-info btn-flat">选择</button>
</span>
</div>
#end
</div>
<div class="form-group form-md-line-input col-xs-6">
<label for="checkDateStr">送检日期</label>
<input type="text"
......@@ -331,6 +352,49 @@
}
};
/**
* 选择病载实验室
*/
$(".selOrg").click(function () {
Cfapp.f7({
dataUrl: "#springUrl('/a/wxQrcode/listOrg')?parentName=实验室",
checkType: "single", // 多选为multi
title: '请选择实验室',
btnoktext: "确定",
btncanceltext: "取消",
columns: ["选择", "请选择实验室"],
isSearch: '0',
searchColumns: ["name"],//搜索的字段名称
searchColumnsRemarks: ["请选择实验室"],//搜索的字段备注
aoColumns: [{
"mData": "id"
}, {
"mData": "name"
}],
aoColumnDefs: [{
"aTargets": [0],
"mData": "id",
"mRender": function (a, b, c, d) {
return '<input class="bindId" value="' + a + '" type="radio" id="' + a + '" name="sel" data-value="' + a + '" data-name="' + c.name + '">';
}
}, {
"aTargets": [1],
"mData": "name",
"mRender": function (a, b, c, d) {//a表示createtime对应的值,c表示当前记录行对象
return a;
}
}],
success: function () {
},
cancel: function () {
},
storeFields: 'checkedBy', //存储字段
displayFields: 'orgName' //展示字段
})
});
var recdTypeAdd = function () {
var initForm = function () {
var initFormCtrl = function () {
......
......@@ -89,7 +89,7 @@
<div class="col-xs-5">
<button type="button" class="search btn btn-primary">搜索</button>
#if($shiro.hasPermission("qy:checkresult:edit"))
<a href="#springUrl('/a/checkresult/form')?pageType=Edit"
<a href="#springUrl('/a/checkresult/form')?pageType=Edit&edit=New"
class="btn btn-primary">新增</a>
<a href="#springUrl('/a/checkresult/exportExcel')" class="btn btn-primary">导出</a>
<a onclick="importExcel();" class="btn btn-primary">导入</a>
......
......@@ -31,6 +31,7 @@
<result column="update_by" property="updateBy"/>
<result column="name" property="name"/>
<result column="verifDate" property="verifDate"/>
<result column="orgName" property="orgName"/>
</resultMap>
<sql id="sqlWhere">
......@@ -153,24 +154,35 @@
<select id="fetchById" parameterType="java.lang.Long" resultMap="resultMap">
SELECT
<include refid="sqlColumns"/>
<include refid="sqlColumns"/>, o.org_name orgName
FROM t_aidea_check_result t
LEFT JOIN t_orgunit o ON o.id = t.checked_by AND o.del_flag = '0'
WHERE t.id=#{id}
</select>
<select id="count" parameterType="java.util.Map" resultType="java.lang.Integer">
SELECT COUNT(1) FROM t_aidea_check_result t
LEFT JOIN wx_mp_fanss f ON t.openid = f.openid AND f.delflag = '0'
LEFT JOIN t_aidea_coupon_record cr ON t.send_check_no = cr.number AND cr.del_flag = '0'
LEFT JOIN t_qyuser qyu ON qyu.org_id = t.checked_by AND qyu.del_flag = '0'
LEFT JOIN user u ON u.userid = qyu.id AND u.delflag = '0'
LEFT JOIN t_orgunit o ON o.id = t.checked_by AND o.del_flag = '0'
<include refid="sqlWhere"/>
</select>
<select id="fetchSearchByPage" parameterType="java.util.Map" resultMap="resultMap">
SELECT
<include refid="sqlColumns"/>, CONVERT(AES_DECRYPT(f.nickname,'aideakey') USING UTF8) name, cr.verif_date verifDate
<include refid="sqlColumns"/>,
CONVERT(AES_DECRYPT(f.nickname,'aideakey') USING UTF8) name, o.org_name orgName,
cr.verif_date verifDate
FROM t_aidea_check_result t
LEFT JOIN wx_mp_fanss f ON t.openid = f.openid AND f.delflag = '0'
LEFT JOIN t_aidea_coupon_record cr ON t.send_check_no = cr.number
LEFT JOIN t_aidea_coupon_record cr ON t.send_check_no = cr.number AND cr.del_flag = '0'
LEFT JOIN t_qyuser qyu ON qyu.org_id = t.checked_by AND qyu.del_flag = '0'
LEFT JOIN user u ON u.userid = qyu.id AND u.delflag = '0'
LEFT JOIN t_orgunit o ON o.id = t.checked_by AND o.del_flag = '0'
<include refid="sqlWhere"/>
<if test="userid!=null"> AND u.id = ${userid} </if>
<if test="sort!=null">ORDER BY ${sort.param} ${sort.type}</if>
<if test="limit>0">limit #{offset},#{limit}</if>
</select>
......
......@@ -83,11 +83,15 @@ public class Checkresult implements Serializable {
@ExportConfig(value = "粉丝昵称", width = 100, showLevel = 1)
private String name;//患者名称
@ExportConfig(value = "检测券编码", width = 120, showLevel = 1)
private String copponRecordNo;//检测券编码
//@ExportConfig(value = "检测券编码", width = 120, showLevel = 1)
private String couponRecordNo;//检测券编码
private String checkDateStr;
private String reagentVerifDateStr;
@ExportConfig(value = "实验室组织编码", width = 150, showLevel = 2)
private String orgCode;
private String orgName;//实验室名称
private Date verifDate;//核销时间、检测时间
......
......@@ -4,8 +4,12 @@ import com.alibaba.fastjson.JSONObject;
import com.cftech.checkresult.model.Checkresult;
import com.cftech.checkresult.model.CheckresultVo;
import com.cftech.core.generic.GenericService;
import com.cftech.core.sql.Conds;
import com.cftech.core.sql.Sort;
import com.cftech.couponrecord.model.CouponrecordVo;
import java.util.List;
/**
* 检测结果管理Service
*
......@@ -46,4 +50,15 @@ public interface CheckresultService extends GenericService<Checkresult> {
* @return
*/
boolean sendCheckResultMsg(Checkresult checkresult);
/**
* 获取后台列表数据(通过人员隔离)
* @param conds
* @param sort
* @param iDisplayStart
* @param iDisplayLength
* @param userid
* @return
*/
List<Checkresult> fetchSearchByPage(Conds conds, Sort sort, int iDisplayStart, int iDisplayLength, Long userid);
}
......@@ -9,6 +9,7 @@ import com.cftech.checkresult.service.CheckresultService;
import com.cftech.core.generic.GenericDao;
import com.cftech.core.generic.GenericServiceImpl;
import com.cftech.core.sql.Conds;
import com.cftech.core.sql.Sort;
import com.cftech.core.util.Constants;
import com.cftech.core.util.DateFormatUtils;
import com.cftech.core.util.MpTokenUtil;
......@@ -22,6 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -49,6 +51,19 @@ public class CheckresultServiceImpl extends GenericServiceImpl<Checkresult> impl
return checkresultMapper;
}
@Override
public List<Checkresult> fetchSearchByPage(Conds conds, Sort sort, int page, int pageSize, Long userid) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("conds", conds);
params.put("offset", page > 0 ? page : 0);
params.put("limit", pageSize > 0 ? pageSize : 0);
params.put("sort", sort);
if (userid != null) {
params.put("userid", userid);
}
return getGenericMapper().fetchSearchByPage(params);
}
public JSONObject checkResultsList(CheckresultVo vo) {
JSONObject rtnJson = new JSONObject();
try {
......
......@@ -2,6 +2,10 @@ package com.cftech.checkresult.web;
import com.alibaba.fastjson.JSONObject;
import com.cftech.base.codingrule.utils.CodingruleUtils;
import com.cftech.base.org.model.OrgUnit;
import com.cftech.base.org.model.Qyuser;
import com.cftech.base.org.service.OrgUnitService;
import com.cftech.base.org.service.QyuserService;
import com.cftech.checkresult.model.Checkresult;
import com.cftech.checkresult.service.CheckresultService;
import com.cftech.core.poi.ExcelKit;
......@@ -10,8 +14,10 @@ import com.cftech.core.sql.Conds;
import com.cftech.core.sql.Sort;
import com.cftech.core.util.Constants;
import com.cftech.core.util.DateFormatUtils;
import com.cftech.core.util.SystemConfig;
import com.cftech.couponrecord.model.Couponrecord;
import com.cftech.couponrecord.service.CouponrecordService;
import com.cftech.sys.model.User;
import com.cftech.sys.security.UserUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
......@@ -57,6 +63,12 @@ public class CheckresultController {
@Autowired
private CouponrecordService couponrecordService;
@Autowired
private OrgUnitService orgUnitService;
@Autowired
private QyuserService qyuserService;
//列表页面
@RequiresPermissions(value = CHECKRESULT_VIEW)
@RequestMapping("/list")
......@@ -74,6 +86,26 @@ public class CheckresultController {
Checkresult checkresult = checkresultService.fetchById(id);
model.addAttribute("data", checkresult);
}
User user = UserUtils.getUser();
OrgUnit orgUnit = null;
Long orgId = null;
if (StringUtils.equals(user.getUsername(), "admin")) {
orgId = Long.parseLong(SystemConfig.p.getProperty("LABORATORY_ROOT_ORG_ID"));//实验室最上级组织id
} else {
Conds qyuserConds = new Conds();
qyuserConds.equal("t.del_flag", Constants.DEL_FLAG_0);
qyuserConds.equal("u.id", user.getId());
Qyuser qyuser = qyuserService.fetchSearchByConds(qyuserConds);
if (qyuser != null) {
orgId = qyuser.getOrgId();
}
}
if (orgId != null) {
orgUnit = orgUnitService.fetchById(orgId);
}
model.addAttribute("orgUnit", orgUnit);
model.addAttribute("pageType", pageType.equals("View") ? true : false);//是否查看页面
model.addAttribute("edit", StringUtils.equals(edit, "Edit") ? true : false);
return "checkresult/checkresultform";
......@@ -145,7 +177,15 @@ public class CheckresultController {
@ResponseBody
public JSONObject listData(int iDisplayStart, int iDisplayLength, Checkresult checkresult, HttpServletRequest request) {
Long accountsId = UserUtils.getmpaccounts(request);
Conds conds = new Conds();
//通过人员隔离
Long userid = null;
User user = UserUtils.getUser();
if (!user.getUsername().equals("admin")) {//非admin用户
userid = user.getUserid();
}
Conds conds = new Conds();
conds.equal("t.del_flag", Constants.DEL_FLAG_0);
conds.equal("t.accounts_id", accountsId);
if (StringUtils.isNoneBlank(checkresult.getName())) {
......@@ -156,7 +196,7 @@ public class CheckresultController {
}
Sort sort = new Sort("t.create_time", OrderType.DESC);
List<Checkresult> list = checkresultService.fetchSearchByPage(conds, sort, iDisplayStart, iDisplayLength);
List<Checkresult> list = checkresultService.fetchSearchByPage(conds, sort, iDisplayStart, iDisplayLength, userid);
Integer counts = checkresultService.count(conds);
JSONObject rtnJson = new JSONObject();
rtnJson.put("iTotalRecords", counts);
......@@ -184,6 +224,13 @@ public class CheckresultController {
@RequiresPermissions(value = CHECKRESULT_VIEW)
public void exportExcel(HttpServletRequest request, HttpServletResponse response, Checkresult checkresult) {
Long accountId = UserUtils.getmpaccounts(request);
Long userid = null;
User user = UserUtils.getUser();
if (!user.getUsername().equals("admin")) {//非admin用户
userid = user.getUserid();
}
Sort sort = new Sort("t.create_time", OrderType.ASC);
Conds conds = new Conds();
conds.equal("t.del_flag", 0);
......@@ -194,7 +241,7 @@ public class CheckresultController {
if (StringUtils.isNoneBlank(checkresult.getSendCheckNo())) {
conds.like("t.send_check_no", checkresult.getSendCheckNo());
}
List<Checkresult> list = checkresultService.fetchSearchByPage(conds, sort, 0, 0);
List<Checkresult> list = checkresultService.fetchSearchByPage(conds, sort, 0, 0, userid);
ExcelKit.$Export(Checkresult.class, response).toExcel(list, "检测结果管理信息");
}
......@@ -234,9 +281,6 @@ public class CheckresultController {
checkresult.setNumber(codingruleUtils.getNumber(accountId, Checkresult.class.getName()));
}
checkresult.setAccountsId(accountId);
//设置检测人员
Conds conds = new Conds();
conds.equal("t.del_flag", Constants.DEL_FLAG_0);
......@@ -246,6 +290,7 @@ public class CheckresultController {
checkresult.setOpenid(couponrecord.getOpenid());
}
checkresult.setAccountsId(accountId);
checkresult.setSendCheckNo(rowData.get(0));
if (StringUtils.isNoneBlank(rowData.get(1))) {
checkresult.setCheckDate(DateFormatUtils.formatDate(rowData.get(1), "yyyy-MM-dd"));
......@@ -262,6 +307,16 @@ public class CheckresultController {
checkresult.setUnit(rowData.get(9));
checkresult.setInstrument(rowData.get(10));
checkresult.setResult(rowData.get(11));
//设置对应实验室
if (StringUtils.isNoneBlank(rowData.get(12))) {
Conds orgConds = new Conds();
orgConds.equal("t.del_flag", Constants.DEL_FLAG_0);
orgConds.equal("t.number", rowData.get(12));
OrgUnit orgUnit = orgUnitService.fetchSearchByConds(orgConds);
if (orgUnit != null) {
checkresult.setCheckedBy(String.valueOf(orgUnit.getId()));
}
}
if (checkresult.getId() == null) {
checkresultService.save(checkresult);
......
......@@ -159,11 +159,13 @@
</div>
</div>
<a href="javascript:void(0)" class="btn btn-primary search">搜索</a>
<button type="button" class="btn btn-info" onclick="clearSearch()">重置</button>
#if($shiro.hasPermission("qy:consultSheet:edit"))
<button type="submit" class="btn btn-primary">导出</button>
#end
<div class="col-xs-2">
<a href="javascript:void(0)" class="btn btn-primary search">搜索</a>
<button type="button" class="btn btn-info" onclick="clearSearch()">重置</button>
#if($shiro.hasPermission("qy:consultSheet:edit"))
<button type="submit" class="btn btn-primary">导出</button>
#end
</div>
</form>
</div><!-- /.box-header -->
......@@ -334,7 +336,6 @@
{
"mData": "id"
}
],
"aoColumnDefs": [
{ // set default column settings
......@@ -351,7 +352,6 @@
} else {
return null;
}
}
},
{
......@@ -365,8 +365,6 @@
} else {
return '';
}
}
},
{
......@@ -429,7 +427,6 @@
return '否';
}
}
},
{
"width": "60px",
......@@ -437,9 +434,9 @@
"mData": "isThree",
"mRender": function (a, b, c, d) {
if (a == '0') {
return '三期';
return '<span style="color:RGB(249,203,132)">三期</span>';
} else if (a == '1') {
return '四期';
return '<span style="color:RGB(249,203,132)">四期</span>';
} else {
return '';
}
......@@ -476,11 +473,11 @@
"mData": "status",
"mRender": function (a, b, c, d) {
if (a == 0) {
return "待审核";
return "<span style='color:RGB(100,160,240)'>待审核</span>";
} else if (a == 1) {
return "已通过";
return "<span style='color:RGB(249,203,132)'>已通过</span>";
} else if (a == 2) {
return "已拒绝";
return "<span style='color:RGB(255,51,0)'>已拒绝</span>";
}
}
},
......@@ -527,17 +524,17 @@
"mData": "id",
"mRender": function (a, b, c, d) {
let html = '';
html += '<div class="btn-group">\n' +
//'<button type="button" class="btn btn-success btn-flat">操作</button>\n' +
'<button type="button" class="btn btn-success btn-flat dropdown-toggle" data-toggle="dropdown">\n' +
' <span class="caret"></span>\n' +
' <span class="sr-only">Toggle Dropdown</span>\n' +
'</button>\n' +
'<ul class="dropdown-menu" role="menu" style="min-width: 100px;">\n';
// html += '<div class="btn-group">\n' +
// //'<button type="button" class="btn btn-success btn-flat">操作</button>\n' +
// '<button type="button" class="btn btn-success btn-flat dropdown-toggle" data-toggle="dropdown">\n' +
// ' <span class="caret"></span>\n' +
// ' <span class="sr-only">Toggle Dropdown</span>\n' +
// '</button>\n' +
// '<ul class="dropdown-menu" role="menu" style="min-width: 100px;">\n';
if (c.status == '0') {
html += '<li>#if($shiro.hasPermission("qy:consultSheet:edit"))<a href="#springUrl("/a/consultSheet/form?pageType=Audit&id=' + a + '")" class="btn green">审核</a>#end</li>';
html += '#if($shiro.hasPermission("qy:consultSheet:edit"))<a href="#springUrl("/a/consultSheet/form?pageType=Audit&id=' + a + '")" class="btn green">审核</a>#end';
} else {
html += '<li>#if($shiro.hasPermission("qy:consultSheet:view"))<a href="#springUrl("/a/consultSheet/form?pageType=View&id=' + a + '")" class="btn green">查看</a> #end</li>';
html += '#if($shiro.hasPermission("qy:consultSheet:view"))<a href="#springUrl("/a/consultSheet/form?pageType=View&id=' + a + '")" class="btn green">查看</a>#end';
}
return html;
}
......
......@@ -429,7 +429,6 @@ public class ConsultSheetController {
goodsDes = HtmlUtils.htmlUnescape(contents);
Integer integer = consultSheetService.updateStatus(consultId, status, goodsDes);
if (integer > 0){
/**
* 生成空订单
*/
......
......@@ -29,6 +29,7 @@ public class MobileConsultSheetController {
public JSONObject submitConsultSheet(ConsultSheet consultSheet) {
return consultSheetService.pollingConsultSheet(consultSheet);
}
/**
* @Author Licc
* @Description 咨询单列表 搜索
......
......@@ -295,7 +295,7 @@
<select id="buyingMedicineNumber" parameterType="java.util.Map" resultType="java.lang.Integer">
SELECT
IFNULL(SUM(d.drugs_num), 0) number
IFNULL(SUM(d.drugs_num), 0) - IFNULL(SUM(t.remind_type), 0) number
FROM t_order t
LEFT JOIN t_order_details d ON t.id = d.order_id
<include refid="sqlWhere"/>
......
package com.cftech.couponrecord.job;
import com.cftech.accounts.model.SysJob;
import com.cftech.accounts.service.JobService;
import com.cftech.accounts.service.MpAccountsService;
import com.cftech.core.sql.Conds;
import com.cftech.core.util.*;
import com.cftech.couponrecord.model.Couponrecord;
import com.cftech.couponrecord.service.CouponrecordService;
import com.google.gson.Gson;
import lombok.extern.slf4j.Slf4j;
import org.mp.api.core.req.model.message.IndustryTemplateMessageSend;
import org.mp.api.core.req.model.message.TemplateData;
import org.mp.api.wxsendmsg.JwTemplateMessageAPI;
import org.quartz.Job;
import org.quartz.JobDataMap;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
/**
* 检测券可消息日期消息提醒
*/
@Slf4j
public class couponInvalidMsgRemindJob implements Job {
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
boolean isCluster = Boolean.valueOf(SystemConfig.p.getProperty("quartz.isCluster"));
if (!isCluster) {
return;
}
executeCouponRecordRemind();
//获得明细数据
JobDataMap jobInfo = context.getJobDetail().getJobDataMap();
String id = jobInfo.get("uid") == null ? "" : jobInfo.getString("uid");//这个也是ID主键
log.info("任务ID:" + id);
//执行更新操作
if (context.getNextFireTime() != null) {
log.info("检测券可核销消息提醒任务:下次执行时间=====" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(context.getNextFireTime()) + "==============");
} else {
JobService jobService = SpringContextHolder.getBean(JobService.class);
SysJob sysJob = new SysJob();
sysJob.setJobuid(id);
sysJob.setStatus("0");
jobService.updateStatus(sysJob);
log.info("检测券可核销消息提醒任务,已执行完成!");
}
}
private void executeCouponRecordRemind() {
CouponrecordService couponrecordService = SpringContextHolder.getBean(CouponrecordService.class);
MpAccountsService mpAccountsService = SpringContextHolder.getBean(MpAccountsService.class);
MpTokenUtil mpTokenUtil = SpringContextHolder.getBean(MpTokenUtil.class);
Conds conds = new Conds();
conds.equal("t.del_flag", Constants.DEL_FLAG_0);
conds.equal("t.status", "1");//待核销
conds.equal("DATE_FORMAT(t.take_effect_date, '%Y-%m-%d')", DateFormatUtils.getDateFormat(new Date(), "yyyy-MM-dd"));
List<Couponrecord> couponrecordList = couponrecordService.fetchSearchByPage(conds, null, 0, 0);
couponrecordList.forEach(couponrecord -> {
String appid = SystemConfig.p.getProperty("WX_MP_SERVER_APPID");
String token = mpTokenUtil.getToken(mpAccountsService.getMpAccountsAppid(appid));
String refuseTmpId = SystemConfig.p.getProperty("CHECK_RESULT_TEMPLATE_MSG");
String first = "您好,您的检测已出结果。";
String remark = "点击“详情”查看详细报告";
String[] keywords = { };//检测结果
String url = SystemConfig.p.getProperty("MOBILE_MP_DOMAIN_NAME") + "/bzgldetails?appid="+appid+"&tokenId=1&id="+couponrecord.getId();
sendMessage(refuseTmpId, token, couponrecord.getOpenid(), first, remark, keywords, url);
});
}
private void sendMessage(String templateId, String token, String openId, String first, String remark, String [] keywords, String url){
IndustryTemplateMessageSend mc = new IndustryTemplateMessageSend();
mc.setTemplate_id(templateId);
mc.setTouser(openId);
mc.setAccess_token(token);
mc.setUrl(url);
StringBuffer json = new StringBuffer();
Gson gson = new Gson();
String objJson = gson.toJson(mc);
json.append(objJson);
json.setLength(json.length()-1);
json.append(",");
json.append("\"data\":{");
TemplateData template = new TemplateData();
template.setValue(first);
//template.setColor("#ffAADD");
objJson = gson.toJson(template);
json.append(" \"first\":");
json.append(objJson);
json.append(",");
if(keywords!=null && keywords.length>0){
for(int i=0;i<keywords.length;i++){
template.setValue(keywords[i]);
objJson = gson.toJson(template);
json.append(" \"keyword"+(i+1)+"\":");
json.append(objJson);
json.append(",");
}
}
template.setValue(remark);
objJson = gson.toJson(template);
json.append(" \"remark\":");
json.append(objJson);
json.append("}}");
JwTemplateMessageAPI.sendTemplateMsgJson(json.toString(),token);
}
}
......@@ -87,7 +87,7 @@
class="form-control datepicker"
id="name" name="name"
value="$!{data.name}"
#if($!{pageType} == 'true') readonly="readonly" #end />
#if($!{pageType}== 'true') readonly="readonly" #end />
</div>
<div class="form-group form-md-line-input col-xs-6">
......@@ -99,10 +99,13 @@
maxlength="50" placeholder="所属组织"/>
#else
<div class="input-group">
<input type="text" name="orgName" id="orgName" value="$!{data.orgName}" class="form-control" disabled>
<input type="text" id="orgId" name="orgId" value="$!{data.orgId}" class="form-control" style="display: none">
<input type="text" name="orgName" id="orgName" value="$!{data.orgName}"
class="form-control" disabled>
<input type="text" id="orgId" name="orgId" value="$!{data.orgId}"
class="form-control" style="display: none">
<span class="input-group-btn">
<button type="button" name="selOrg" id="selOrg" class="btn btn-info btn-flat selOrg">选择</button>
<button type="button" name="selOrg" id="selOrg"
class="btn btn-info btn-flat selOrg">选择</button>
</span>
</div>
#end
......@@ -114,7 +117,7 @@
class="form-control datepicker"
id="facilityNo" name="facilityNo"
value="$!{data.facilityNo}"
#if($!{pageType} == 'true') readonly="readonly" #end />
#if($!{pageType}== 'true') readonly="readonly" #end />
</div>
<div class="form-group form-md-line-input col-xs-6">
......@@ -123,16 +126,7 @@
class="form-control datepicker"
id="telephone" name="telephone"
value="$!{data.telephone}"
#if($!{pageType} == 'true') readonly="readonly" #end />
</div>
<div class="form-group form-md-line-input col-xs-6">
<label for="address">地址</label>
<input type="text"
class="form-control datepicker"
id="address" name="address"
value="$!{data.address}"
#if($!{pageType} == 'true') readonly="readonly" #end />
#if($!{pageType}== 'true') readonly="readonly" #end />
</div>
#if($!{pageType} == 'true')
......@@ -177,6 +171,15 @@
</div>
#end
<div class="form-group form-md-line-input col-xs-6">
<label for="address">地址</label>
<input type="text"
class="form-control datepicker"
id="address" name="address"
value="$!{data.address}"
#if($!{pageType}== 'true') readonly="readonly" #end />
</div>
<div class="form-group form-md-line-input col-xs-6">
<label for="remarks">备注</label>
<textarea class="form-control" rows="3" id="remarks" name="remarks"
......@@ -295,7 +298,7 @@
messages: {},
submitHandler: function (form) {
console.log(form);
console.log("=="+ $("#myForm").serialize());
console.log("==" + $("#myForm").serialize());
$("#save").attr("disabled", true);
$.getJSON("#springUrl('/a/hospital/formData')", $("#myForm").serialize(), function (returnobj) {
......
......@@ -203,9 +203,9 @@
"sAjaxSource": sSource,
"fnServerData": retrieveData,
"pagingType": "full_numbers",
"autoWidth": true,
"scrollX": true,
"sScrollY": false,
// "autoWidth": true,
// "scrollX": true,
// "sScrollY": false,
"aoColumns": [
{
"mData": "id"
......
package com.cftech.hospital.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.cftech.core.scope.OrderType;
import com.cftech.core.sql.Sort;
import com.cftech.core.util.Constants;
import com.cftech.core.util.StringUtils;
import com.cftech.hospital.model.Hospital;
import com.cftech.hospital.dao.HospitalMapper;
import com.cftech.hospital.model.HospitalVo;
......@@ -37,40 +41,54 @@ public class HospitalServiceImpl extends GenericServiceImpl<Hospital> implements
@Override
public JSONObject hospitalList(HospitalVo vo) {
JSONObject rtnJson = new JSONObject();
String lat = vo.getLatitude();
String lng = vo.getLongitude();
double lattarget = Double.valueOf(lat);
double lngtarget = Double.valueOf(lng);
// double lattarget = Double.valueOf("32.0572355");
// double lngtarget = Double.valueOf("118.77807441");
try {
List<Map<String, Object>> list = hospitalMapper.hospitalList(vo);
if (list != null && list.size() > 0) {
Map<Double, Map> resultMap = new HashMap<Double, Map>();
double[] a = new double[list.size()];
for (Map<String, Object> map : list) {
double lat2 = Double.valueOf(map.get("latitude") + "");
double lng2 = Double.valueOf(map.get("longitude") + "");
double distance = TxMapUtils.getDistance(lattarget, lngtarget, lat2, lng2);
a[list.indexOf(map)] = distance;
map.put("distance", (double) Math.round(distance * 100) / 100);
resultMap.put(distance, map);
}
Arrays.sort(a);
List<Map<String, Object>> reltlist = new ArrayList<Map<String, Object>>();
for (int i = 0; i < a.length; i++) {
reltlist.add(resultMap.get(a[i]));
if (StringUtils.isNoneBlank(vo.getLatitude()) && StringUtils.isNoneBlank(vo.getLongitude())) {
String lat = vo.getLatitude();
String lng = vo.getLongitude();
double lattarget = Double.valueOf(lat);
double lngtarget = Double.valueOf(lng);
try {
List<Map<String, Object>> list = hospitalMapper.hospitalList(vo);
if (list != null && list.size() > 0) {
Map<Double, Map> resultMap = new HashMap<Double, Map>();
double[] a = new double[list.size()];
for (Map<String, Object> map : list) {
double lat2 = Double.valueOf(map.get("latitude") + "");
double lng2 = Double.valueOf(map.get("longitude") + "");
double distance = TxMapUtils.getDistance(lattarget, lngtarget, lat2, lng2);
a[list.indexOf(map)] = distance;
map.put("distance", (double) Math.round(distance * 100) / 100);
resultMap.put(distance, map);
}
Arrays.sort(a);
List<Map<String, Object>> reltlist = new ArrayList<Map<String, Object>>();
for (int i = 0; i < a.length; i++) {
reltlist.add(resultMap.get(a[i]));
}
rtnJson.put("errorCode", 0);
rtnJson.put("data", reltlist);
} else {
rtnJson.put("errorCode", 1);
rtnJson.put("errorMsg", "暂无数据");
}
} catch (Exception e) {
e.printStackTrace();
rtnJson.put("errorCode", 1);
rtnJson.put("errorMsg", "合作医院列表" + e.getMessage());
}
} else {
//获取所有医院列表
try {
Conds conds = new Conds();
conds.equal("t.del_flag", Constants.DEL_FLAG_0);
Sort sort = new Sort("t.create_time", OrderType.DESC);
List<Hospital> hospitalList = fetchSearchByPage(conds, sort, 0, 0);
rtnJson.put("errorCode", 0);
rtnJson.put("data", reltlist);
} else {
rtnJson.put("data", hospitalList);
} catch (Exception e) {
e.printStackTrace();
rtnJson.put("errorCode", 1);
rtnJson.put("errorMsg", "暂无数据");
rtnJson.put("errorMsg", "合作医院列表" + e.getMessage());
}
} catch (Exception e) {
e.printStackTrace();
rtnJson.put("errorCode", 1);
rtnJson.put("errorMsg", "合作医院列表" + e.getMessage());
}
return rtnJson;
}
......
......@@ -94,10 +94,34 @@ public class InvoiceDetail {
*/
private String invoiceCreateTime;
/**
* 移动端传的APPID
*/
private String appId;
/**
* 发票代码
*/
private String nvoiceCode;
/**
* 发票号码
*/
private String invoiceNum;
/**
* 订单金额
*/
private String orderAmount;
/**
* 发票图片路径
*/
private String imageUrl;
/**
* 发票pdf路径
*/
private String pdfUrl;
}
......@@ -50,34 +50,34 @@ public class InvoiceServiceImpl extends GenericServiceImpl<Invoice> implements I
JSONObject jsonObject = new JSONObject();
MpAccountsEntity mpAccountsEntity = null;
if (StringUtils.isNotBlank(invoiceDetail.getAppId())) {
mpAccountsEntity = mpAccountsService.getMpAccountsAppid(invoiceDetail.getAppId());
mpAccountsEntity = mpAccountsService.getMpAccountsAppid(invoiceDetail.getAppId());
} else {
jsonObject.put("errorNo","2");
jsonObject.put("errorMsg","appId不能为空");
jsonObject.put("errorNo", "2");
jsonObject.put("errorMsg", "appId不能为空");
return jsonObject;
}
try {
Map<String, Object> params = new HashMap<String, Object>();
Conds conds = new Conds();
conds.equal("o.accounts_id",mpAccountsEntity.getId());
conds.equal("o.del_flag",0);
if(StringUtils.isNotBlank(invoiceDetail.getId())){
conds.equal("o.id",invoiceDetail.getId());
conds.equal("o.accounts_id", mpAccountsEntity.getId());
conds.equal("o.del_flag", 0);
if (StringUtils.isNotBlank(invoiceDetail.getId())) {
conds.equal("o.id", invoiceDetail.getId());
}
Sort sort = new Sort("d.create_time", OrderType.DESC);
params.put("conds", conds);
params.put("sort", sort);
List<InvoiceDetail> list = invoiceMapper.selectInvoiceDetail(params);
jsonObject.put("errorNo","0");
if(list.size() > 0){
jsonObject.put("data",list);
}else{
jsonObject.put("data",null);
jsonObject.put("errorNo", "0");
if (list.size() > 0) {
jsonObject.put("data", list);
} else {
jsonObject.put("data", null);
}
}catch (Exception e){
jsonObject.put("errorNo","1");
jsonObject.put("errorMsg","程序异常");
} catch (Exception e) {
jsonObject.put("errorNo", "1");
jsonObject.put("errorMsg", "程序异常");
}
return jsonObject;
......@@ -127,7 +127,7 @@ public class InvoiceServiceImpl extends GenericServiceImpl<Invoice> implements I
JSONObject obj = JSONObject.parseObject(result);
if (obj.getString("code").equals("E0000")) {
JSONArray arr = obj.getJSONArray("result");
for (int i=0; i<arr.size(); i++) {
for (int i = 0; i < arr.size(); i++) {
JSONObject invoiceObj = arr.getJSONObject(i);
if (invoice.getInvoiceSerialNum().equals(invoiceObj.getString("serialNo")) && invoiceObj.getString("status").equals("2")) {
invoice.setInvoiceCode(invoiceObj.getString("invoiceCode"));
......
......@@ -122,12 +122,12 @@
<section class="content-header">
<h1>
需求清单出库管理
<small>需求清单出库管理</small>
需求清单地址管理
<small>需求清单地址管理</small>
</h1>
<ol class="breadcrumb">
<li><a><i class="fa fa-dashboard"></i>首页</a></li>
<li><a class="active">需求清单出库管理列表</a></li>
<li><a class="active">需求清单地址管理列表</a></li>
</ol>
</section>
......
......@@ -124,22 +124,7 @@
<input type="text" class="form-control"
name="courierNumber" placeholder="顺丰运单号">
</div>
<!--<div class="col-xs-2">-->
<!--<input type="text" class="form-control"-->
<!--name="startOrderAmount" placeholder="订单金额开始区间">-->
<!--</div>-->
<!--<div class="col-xs-2">-->
<!--<input type="text" class="form-control"-->
<!--name="endOrderAmount" placeholder="订单金额结束区间">-->
<!--</div>-->
<!--<div class="col-xs-2">-->
<!--<input type="text" class="form-control"-->
<!--name="startPayAmount" placeholder="付款金额开始区间">-->
<!--</div>-->
<!--<div class="col-xs-2">-->
<!--<input type="text" class="form-control"-->
<!--name="endPayAmount" placeholder="付款金额结束区间">-->
<!--</div>-->
<div class="col-xs-2">
<select id="status" name="status" class="form-control required">
<!--<option value="">请选择订单状态</option>-->
......@@ -152,14 +137,6 @@
</select>
</div>
<div class="col-xs-2">
<select id="isBill" name="isBill" class="form-control required">
<option value="">请选择是否开票</option>
<option value="0"></option>
<option value="1"></option>
</select>
</div>
<div class="col-xs-2">
<div class="input-group date">
<div class="input-group-addon">
......@@ -183,14 +160,10 @@
</div>
</div>
<button type="button" class="search btn btn-primary">搜索</button>
<button type="button" class="btn btn-info" onclick="clearSearch()">重置</button>
#if($shiro.hasPermission("qy:order:edit"))
<!-- <a href="#springUrl('/a/order/form')" class="btn btn-primary">新增</a>-->
<!--<a href="#springUrl('/a/order/exportExcel')" class="btn btn-primary">导出</a>-->
#end
<!-- <a onclick="importExcel();" class="btn btn-primary">导入</a>-->
<div class="col-xs-2">
<button type="button" class="search btn btn-primary">搜索</button>
<button type="button" class="btn btn-info" onclick="clearSearch()">重置</button>
</div>
</form>
</div><!-- /.box-header -->
......@@ -199,25 +172,24 @@
<thead>
<tr>
<td hidden="true">Id</td>
<th>订单编码</th>
<th>咨询单编码</th>
<th>产品名称</th>
<th style="width: 120px">订单编码</th>
<th style="width: 120px">咨询单编码</th>
<th style="width: 120px">产品名称</th>
<!--<th>订单金额</th>-->
<!--<th>付款金额</th>-->
<!--<th>昵称</th>-->
<!--<th>openid</th>-->
<th>顺丰运单号</th>
<th>订单状态</th>
<th>支付交易号</th>
<th>是否开票</th>
<th>创建时间</th>
<th>出库时间</th>
<th>操作</th>
<th style="width: 120px">顺丰运单号</th>
<th style="width: 80px">订单状态</th>
<th style="width: 150px">支付交易号</th>
<th style="width: 80px">是否开票</th>
<th style="width: 120px">创建时间</th>
<th style="width: 120px">出库时间</th>
<th style="width: 120px">操作</th>
</tr>
</thead>
<tbody id="tablebody">
</tbody>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
......@@ -501,14 +473,14 @@
"mData": "id",
"mRender": function (a, b, c, d) {
var html = '#if($shiro.hasPermission("qy:order:edit"))';
html += '<div class="btn-group">\n' +
//'<button type="button" class="btn btn-success btn-flat">操作</button>\n' +
'<button type="button" class="btn btn-success btn-flat dropdown-toggle" data-toggle="dropdown">\n' +
' <span class="caret"></span>\n' +
' <span class="sr-only">Toggle Dropdown</span>\n' +
'</button>\n' +
'<ul class="dropdown-menu" role="menu" style="min-width: 100px;">\n';
html += '<li><a href="#springUrl("/a/order/findorderDetail?id=' + a + '&isDetail=y")">查看清单明细</a></li>';
// html += '<div class="btn-group">\n' +
// //'<button type="button" class="btn btn-success btn-flat">操作</button>\n' +
// '<button type="button" class="btn btn-success btn-flat dropdown-toggle" data-toggle="dropdown">\n' +
// ' <span class="caret"></span>\n' +
// ' <span class="sr-only">Toggle Dropdown</span>\n' +
// '</button>\n' +
// '<ul class="dropdown-menu" role="menu" style="min-width: 100px;">\n';
// html += '<li><a href="#springUrl("/a/order/findorderDetail?id=' + a + '&isDetail=y")">查看清单明细</a></li>';
// if (c.status == '0') {
// html += '<li><a href="#springUrl("/a/order/form?id=' + a + '")">添加商品</a></li>';
// }
......@@ -518,13 +490,14 @@
// if (c.status != '4' && c.status != '5') {
// html += '<li><a onclick="showModal(' + a + ')">订单关闭</a></li>';
// }
html += '<a data-action="view" class="btn green" href="#springUrl("/a/order/findorderDetail?id=' + a + '&isDetail=y")">查看清单明细</a>';
if (c.status == '2') {//待发货才可以出库操作
html += '<li><a href="#springUrl("/a/order/sendOut?pageType=Edit&id=' + a + '")">订单出库</a></li>';
html += '<a data-action="remove" class="btn red" href="#springUrl("/a/order/sendOut?pageType=Edit&id=' + a + '")">订单出库</a>';
}
if (c.status == '3' || c.status == '4') {//
html += '<li><a href="#springUrl("/a/order/sendOut?pageType=View&id=' + a + '")">订单出库详情</a></li>';
html += '<a data-action="view" class="btn green" href="#springUrl("/a/order/sendOut?pageType=View&id=' + a + '")">订单出库详情</a>';
}
html += '</ul>';
// html += '</ul>';
html += '#end';
return html;
}
......
......@@ -38,63 +38,6 @@
<result column="remind_type" property="remindType"/>
</resultMap>
<resultMap id="resultMapList" type="com.cftech.order.model.Order">
<id column="id" property="id"/>
<result column="consult_id" property="consultId"/>
<result column="openid" property="openid"/>
<result column="number" property="number"/>
<result column="member_id" property="memberId"/>
<result column="service_id" property="serviceId"/>
<result column="doctor_id" property="doctorId"/>
<result column="openid" property="openid"/>
<result column="pay_time" property="payTime"/>
<result column="pay_status" property="payStatus"/>
<result column="pay_amount" property="payAmount"/>
<result column="order_amount" property="orderAmount"/>
<result column="total_amount" property="totalAmount"/>
<result column="pay_time" property="payTime"/>
<result column="trade_no" property="tradeNo"/>
<result column="remarks" property="remarks"/>
<result column="order_cancel" property="orderCancel"/>
<result column="accounts_id" property="accountsId"/>
<result column="del_flag" property="delFlag"/>
<result column="status" property="status"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="description" property="description"/>
<result column="create_by" property="createBy"/>
<result column="update_by" property="updateBy"/>
<result column="confirm" property="confirm"/>
<result column="drugs_num" property="drugsNum"/>
<result column="product_number" property="productNumber"/>
<result column="product_name" property="productName"/>
<result column="common_name" property="commonName"/>
<result column="address_id" property="addressId"/>
<result column="courier_number" property="courierNumber"/>
<result column="address_des" property="addressDes"/>
<result column="consultCode" property="consultCode"/>
<result column="nickName" property="nickName"/>
<result column="format" property="format"/>
<result column="price" property="price"/>
<result column="address" property="address"/>
<result column="order_time" property="orderTime"/>
<result column="cancel_time" property="cancelTime"/>
<result column="remind_type" property="remindType"/>
<result column="memberPhone" property="memberPhone"/>
<result column="memberName" property="memberName"/>
<result column="sendExpressDateStr" property="sendExpressDateStr"/>
<result column="acceptExpressDateStr" property="acceptExpressDateStr"/>
<result column="outTime" property="outTime"/>
<result column="takeFrequency" property="takeFrequency"/>
<result column="fansAlias" property="fansAlias"/>
<result column="isThree" property="isThree"/>
<result column="isSales" property="isSales"/>
<collection property="list" ofType="com.cftech.order.model.ProductVO">
<result column="product_name" property="productName"/>
</collection>
</resultMap>
<sql id="sqlWhere">
<if test="conds!=null">
<trim prefix="WHERE" prefixOverrides="AND|OR">
......@@ -334,47 +277,45 @@
) duals
</select>
<select id="fetchSearchByPage" parameterType="java.util.Map" resultMap="resultMapList">
<select id="fetchSearchByPage" parameterType="java.util.Map" resultType="com.cftech.order.model.Order">
SELECT
o.id,
o.openid,
t.product_number,
o.consult_id,
t.product_name,
o.consult_id consultId,
o.number,
o.pay_time,
o.pay_amount,
o.order_amount,
o.total_amount,
o.pay_status,
o.order_cancel,
o.trade_no,
o.pay_time payTime,
o.pay_amount payAmount,
o.order_amount orderAmount,
o.total_amount totalAmount,
o.pay_status payStatus,
o.order_cancel orderCancel,
o.trade_no tradeNo,
o.description,
o.STATUS,
o.create_time,
o.update_time,
o.status,
o.create_time createTime,
o.update_time updateTime,
o.confirm,
d.drugs_num,
o.courier_number,
o.address_des,
o.courier_number courierNumber,
o.address_id addressId,
o.address_des addressDes,
o.order_time orderTime,
o.cancel_time cancelTime,
o.remind_type remindType,
o.remarks,
t.id as productId,
GROUP_CONCAT(t.product_number SEPARATOR ',') productNumber,
GROUP_CONCAT(t.product_name SEPARATOR ',') productName,
t.take_frequency takeFrequency,
cs.consult_id consultCode,
CONVERT(AES_DECRYPT(f.nickname,'aideakey') USING UTF8) nickName,
o.address_id,
o.order_time,
o.cancel_time,
DATE_FORMAT(aw.create_time, '%Y-%m-%d %H:%i') outTime,
DATE_FORMAT(aw.create_time, '%Y-%m-%d %H:%i:%s') sendExpressDateStr,
DATE_FORMAT(aw.accept_express_date, '%Y-%m-%d %H:%i:%s') acceptExpressDateStr,
t.id as productId,
f.store fansAlias,
CONVERT(AES_DECRYPT(f.nickname,'aideakey') USING UTF8) nickName,
CONVERT ( AES_DECRYPT( m.`name`, 'aideakey' ) USING UTF8 ) memberName,
CONVERT ( AES_DECRYPT( m.phone, 'aideakey' ) USING UTF8 ) memberPhone,
a.address,
DATE_FORMAT(aw.create_time, '%Y-%m-%d %H:%i') outTime,
o.remind_type,
t.take_frequency takeFrequency,
f.store fansAlias,
s.address,
au.status isThree,
o.remarks,
SUM(d.drugs_num) drugsNum,
(SELECT status FROM t_order sales WHERE sales.del_flag = '0' AND sales.status = '4' AND sales.openid = o.openid LIMIT 1) isSales
FROM t_order o
......@@ -385,7 +326,6 @@
LEFT JOIN wx_mp_fanss f ON f.openid = o.openid and f.delflag = '0'
LEFT JOIN wx_mp_member m on m.open_id = o.openid
LEFT JOIN t_aidea_authentication au ON m.cardid = au.id_card AND au.del_flag = '0'
LEFT JOIN t_shipping_address a on a.id = o.address_id
LEFT JOIN t_aidea_waybill aw ON o.id = aw.order_id
<include refid="sqlWhere"/>
<if test="userid != null"> AND (o.service_id = ${userid} or o.doctor_id =${userid} or o.clerk_id = ${userid}) </if>
......
......@@ -26,6 +26,7 @@ import java.text.SimpleDateFormat;
import java.util.List;
/**
* 每月重置别名定时任务
* Created by 16444 on 2021/1/4.
*/
@Slf4j
......
......@@ -22,7 +22,7 @@ import java.util.Date;
import java.util.List;
/**
* 待付款订单,小时未付款自动取消
* 待付款订单,小时未付款自动取消
* Created by 16444 on 2020/11/24.
*/
@Slf4j
......
......@@ -40,70 +40,6 @@ public class OrderFollowupRemindJob implements Job {
}
executeRemind();
// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
// Long accounts = Long.parseLong(SystemConfig.p.getProperty("QY_SEND_APPID"));
// MpAccountsService mpAccountsService= SpringContextHolder.getBean(MpAccountsService.class);
// MpAccountsEntity accountsEntity = mpAccountsService.getDetail(accounts);
// Long agenId = Long.parseLong(accountsEntity.getAgentId());
// String msg = SystemConfig.p.getProperty("QY_SEND_SERVICE_FOLLOWUP_MSG");
//
// Conds orderConds = new Conds();
// orderConds.equal("o.del_flag", Constants.DEL_FLAG_0);
// orderConds.notNull("o.remind_type");
// orderConds.notEqual("o.remind_type", "0");
// OrderService orderService = SpringContextHolder.getBean(OrderService.class);
// List<Order> list = orderService.fetchSearchByPage(orderConds, null, 0, 0);
// for (Order order: list) {
// //未设置提醒或关闭提醒跳出循环
// if (StringUtils.isBlank(order.getRemindType()) || StringUtils.equals(order.getRemindType(), "0")) {
// continue;
// }
//
// String frequency = order.getTakeFrequency();//药品服用频率
// if (StringUtils.isBlank(frequency) || !frequency.contains("/")) {
// continue;
// }
//
// try {
// String[] arr = frequency.split("/");
// BigDecimal sum = new BigDecimal(arr[1]);//药品总数
// BigDecimal avg = new BigDecimal(arr[0]);//每日服用数量
// BigDecimal result = sum.divide(avg, 0, BigDecimal.ROUND_HALF_UP);
// Date date = sdf.parse(order.getAcceptExpressDateStr());
// Calendar calendar = Calendar.getInstance();
// calendar.setTime(date);
//
// int day = 0;
// if (StringUtils.equals(order.getRemindType(), "1")) {//7天前
// day = result.intValue() - 7;
// } else if (StringUtils.equals(order.getRemindType(), "2")) {//当天
// day = result.intValue();
// } else if (StringUtils.equals(order.getRemindType(), "3")) {//7天后
// day = result.intValue() + 7;
// } else {
// continue;
// }
//
// calendar.set(Calendar.MONTH, day);
// date = calendar.getTime();
//
// Date nowDate = sdf.parse(sdf.format(new Date()));
// if (date.compareTo(nowDate) == 0) {
// QyuserService qyuserService = SpringContextHolder.getBean(QyuserService.class);
// Qyuser serverUser = qyuserService.fetchById(order.getServiceId());
// List<Qyuser> serviceUsers = new ArrayList();
// serviceUsers.add(serverUser);
// QyMsgUtil qyMsgUtil = SpringContextHolder.getBean(QyMsgUtil.class);
// msg += msg + order.getNumber();
// qyMsgUtil.sendText(accounts, false, serviceUsers, null, null, agenId, msg, false);
// }
// } catch (ParseException e) {
// e.printStackTrace();
// } catch (Exception e) {
// e.getMessage();
// }
// }
//获得明细数据
JobDataMap jobInfo = context.getJobDetail().getJobDataMap();
......
......@@ -100,7 +100,7 @@ public class Order extends OrderDetail implements Serializable {
private Long productId;
/**
* 订单提醒类型
* 三期患者本单免费数量
*/
private String remindType;
......@@ -175,16 +175,12 @@ public class Order extends OrderDetail implements Serializable {
this.status = "0";
}
public void setProductName(String productName) {
this.productName = productName;
public String getProductName() {
return productName;
}
public String getProductName() {
if (list == null) {
return null;
}
List<String> collect = this.list.stream().map(x -> x.getProductName()).collect(Collectors.toList());
return StringUtils.join(collect, ";");
public void setProductName(String productName) {
this.productName = productName;
}
@Override
......
......@@ -31,7 +31,7 @@ public interface OrderService extends GenericService<Order> {
*/
List<Order> fetchSearchBy(Conds conds, Sort sort, int page, int pageSize, Long userid, String orderAmount, String payAmount);
Integer count(Conds conds, Long userid);
Integer count(Conds conds, Long userid, String orderAmount, String payAmount);
List<ProductOrder> listProduct();
......
......@@ -122,13 +122,19 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
}
@Override
public Integer count(Conds conds, Long userid) {
public Integer count(Conds conds, Long userid, String orderAmount, String payAmount) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("conds", conds);
//非管理员查询所有
if (userid != null && userid != 1L) {
params.put("userid", userid);
}
if (StringUtils.isNoneBlank(orderAmount)) {
params.put("orderAmount", orderAmount);
}
if (StringUtils.isNoneBlank(payAmount)) {
params.put("payAmount", payAmount);
}
return orderMapper.count(params);
}
......@@ -351,7 +357,6 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
} catch (Exception e) {
e.printStackTrace();
rtnJson.put("errorNo", "1");
}
return rtnJson;
}
......
......@@ -318,7 +318,7 @@ public class OrderController {
obj.setPayUrl(payUrl);
}
}
Integer counts = orderService.count(conds, userid);
Integer counts = orderService.count(conds, userid, order.getStartOrderAmount(), order.getStartPayAmount());
JSONObject rtnJson = new JSONObject();
rtnJson.put("iTotalRecords", counts);
rtnJson.put("iTotalDisplayRecords", counts);
......
......@@ -235,6 +235,13 @@
<option id="redingNo" name="redingNo" value="0" ></option>
</select>
</div>
<!-- <div class="form-group form-md-line-input col-md-12">-->
<!-- <label>销量</label>-->
<!-- <input type="text" class="form-control pull-right"-->
<!-- value="$!{data.reading}" maxlength="200" required-->
<!-- name="reading" placeholder="销量"-->
<!-- >-->
<!-- </div>-->
<div class="form-group form-md-line-input col-md-12">
<label>是否好药推荐</label>
<select id="size" name="size" class="form-control pull-right">
......@@ -258,14 +265,6 @@
>
</div>
<!--<div class="form-group form-md-line-input col-md-12">-->
<!--<label>销量</label>-->
<!--<input type="text" class="form-control pull-right"-->
<!--value="$!{data.reading}" maxlength="200" required-->
<!--name="reading" placeholder="销量"-->
<!--&gt;-->
<!--</div>-->
</div>
<input type="text" style="display: none" name="_csrf" value="${_csrf.token}"/>
......
......@@ -110,23 +110,22 @@
<thead>
<tr>
<th hidden="true">Id</th>
<th>产品分类名称</th>
<th>封面图</th>
<th>产品分类</th>
<th>产品名称</th>
<th>产品编码</th>
<th>产品封面图</th>
<th>通用名</th>
<th>剂型</th>
<th>规格</th>
<th>批准文号</th>
<th>产品编码</th>
<!-- <th>剂型</th>-->
<!-- <th>规格</th>-->
<!-- <th>批准文号</th>-->
<th>生产企业</th>
<th>温馨提示</th>
<th>服用类型</th>
<th>服用频率</th>
<th>服用数量</th>
<th>库存</th>
<!-- <th>温馨提示</th>-->
<!-- <th>服用类型</th>-->
<!-- <th>服用频率</th>-->
<!-- <th>服用数量</th>-->
<!-- <th>库存</th>-->
<th>价格</th>
<th>是否为处方药</th>
<th>销量</th>
<th>处方药</th>
<th>创建时间</th>
<th>操作</th>
</tr>
......@@ -226,61 +225,61 @@
"sAjaxSource": sSource,
"fnServerData": retrieveData,
"pagingType": "full_numbers",
"autoWidth": true,
"scrollX": true,
"sScrollY": false,
"aoColumns": [
{
"mData": "id"
},
{
"mData":"classifyName"
},
{
"mData":"productName"
},
{
"mData":"productNumber"
},
{
"mData":"productImg"
},
{
"mData":"commonName"
"mData":"classifyName"
},
{
"mData":"dosagaFrom"
"mData":"productName"
},
{
"mData":"format"
"mData":"commonName"
},
{
"mData":"approveNumber"
"mData":"productNumber"
},
// {
// "mData":"dosagaFrom"
// },
// {
// "mData":"format"
// },
// {
// "mData":"approveNumber"
// },
{
"mData":"manufacturer"
},
{
"mData":"tips"
},
{
"mData":"takeType"
},
{
"mData":"takeFrequency"
},
{
"mData":"takeAmount"
},
{
"mData":"stock"
},
// {
// "mData":"tips"
// },
// {
// "mData":"takeType"
// },
// {
// "mData":"takeFrequency"
// },
// {
// "mData":"takeAmount"
// },
// {
// "mData":"stock"
// },
{
"mData":"price"
},
{
"mData":"isRs"
},
{
"mData":"reading"
},
{
"mData": "createTime"
},
......@@ -294,7 +293,7 @@
},
{
"aTargets":[4],
"aTargets":[1],
"mData":"productImg",
"mRender":function (a, b, c, d){
return "<img src='"+a+"' style='width: 80px;height: 80px;'>";
......@@ -302,7 +301,7 @@
},
{
"aTargets": [18],
"aTargets": [9],
"mData": "createTime",
"mRender": function (a, b, c, d) {
return formatDates(a, "yyyy-MM-dd HH:mm:ss");
......@@ -310,7 +309,7 @@
},
{
"aTargets": [19],
"aTargets": [10],
"mData": "id",
"mRender": function (a, b, c, d) {
var html = '#if($shiro.hasPermission("qy:product:edit"))';//
......
......@@ -262,11 +262,12 @@
</select>
<select id="fromOrg" resultType="com.cftech.shop.qrcode.model.Orgunit">
select id, org_name name from t_orgunit
where FIND_IN_SET((SELECT id FROM t_orgunit WHERE org_name = #{outSide}), parent_ids) != 0 and del_flag = 0
<if test=" name !=null and name != '' ">AND org_name like '%${name}%' </if>
SELECT id, org_name name FROM t_orgunit
WHERE FIND_IN_SET((SELECT id FROM t_orgunit WHERE org_name = #{outSide}), parent_ids) != 0 AND del_flag = 0
AND id != (SELECT id FROM t_orgunit WHERE org_name = #{outSide})
<if test=" name !=null and name != '' "> AND org_name LIKE '%${name}%' </if>
ORDER BY LENGTH(parent_ids) ASC, create_time DESC
<if test="pageSize>0">limit #{page}, #{pageSize}</if>
<if test="pageSize>0">LIMIT #{page}, #{pageSize}</if>
</select>
<select id="countOrg" resultType="java.lang.Integer">
......
......@@ -19,6 +19,7 @@ import com.sun.org.apache.bcel.internal.generic.NEWARRAY;
import jdk.nashorn.internal.ir.ReturnNode;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.eclipse.jetty.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpRequest;
import org.springframework.stereotype.Controller;
......@@ -170,13 +171,26 @@ public class WxQrcodeController {
return rtnJson;
}
//获取组织展示数据
/**
* 获取组织数据展示
* @param name
* @param iDisplayStart
* @param iDisplayLength
* @param parentName 父级名称
* @return
*/
@RequestMapping(value = "/listOrg",method = {RequestMethod.GET})
@ResponseBody
public JSONObject fromOrg(@RequestParam(required = false)String name, int iDisplayStart, int iDisplayLength) {
public JSONObject fromOrg(@RequestParam(required = false)String name, int iDisplayStart, int iDisplayLength, String parentName) {
JSONObject rtnJson = new JSONObject();
//外部组织最上级名称
String outSide = SystemConfig.p.getProperty("OUTSIDE_ORG_NAME");
String outSide = null;
if (StringUtil.isNotBlank(parentName)) {
outSide = parentName;
} else {
//外部组织最上级名称
outSide = SystemConfig.p.getProperty("OUTSIDE_ORG_NAME");
}
List<WxQrcode> wxQrcodes = wxQrcodeService.fromOrg(outSide, name, iDisplayStart, iDisplayLength);
int countOrg = wxQrcodeService.countOrg(outSide, name);
......
......@@ -11,8 +11,10 @@ CONSULT_SHEET_AUDIT_SUCCESS_TEMPLATE_MSG=AoZzYGqvG5h5wDDDOE_fUrdMOam-QTqTc7wkBO7
CONSULT_SHEET_AUDIT_REFUSE_TEMPLATE_MSG=VSTKsUB_vK8UaiaZplmgk4IvrqIAfIiRD54mUlGR0k0
#\u54A8\u8BE2\u5355\u5BA1\u6838\u5931\u8D25\u901A\u77E5\u6A21\u677F\u6D88\u606F
CONSULT_SHEET_AUDIT_FAILED_TEMPLATE_MSG=77tLdRPQx1m8Gg0-t9HCGVOlka0G4ocFPdq8D5UkHwk
#\u68C0\u6D4B\u7ED3\u679C\u901A\u77E5\u6A21\u677F\u6D88\u606F
#\u75C5\u8F7D\u68C0\u6D4B\u7ED3\u679C\u901A\u77E5\u6A21\u677F\u6D88\u606F
CHECK_RESULT_TEMPLATE_MSG=5Fy77DKlvulE4L2vxsQfhOsJuRqQzIoI-LSmDYWCJt0
#\u75C5\u8F7D\u68C0\u6D4B\u5238\u751F\u6548\u63D0\u9192
CHECK_COUPON_TAKE_EFFECT_REMIND_TEMPLATE_MSG=
#\u4F01\u4E1A\u53F7\u914D\u7F6E\u4FE1\u606F
ROOT_ORG_NAME=\u6C5F\u82CF\u827E\u8FEA\u836F\u4E1A
......@@ -53,7 +55,8 @@ userfiles.qrcodedir=/mydata/fileQrcode
#\u4E09\u671F\u60A3\u8005\u6298\u6263\u836F\u54C1id
THREE_DRUGS_ID=24
#\u68C0\u6D4B\u7ED3\u679C\u5B9E\u9A8C\u5BA4\u7EC4\u7EC7id
LABORATORY_ROOT_ORG_ID=48
#\u56FE\u7247\u8BBF\u95EE\u5730\u5740
IMAGEURL=/aidea/mobile/qybase/showPic?picFileName={PICFILENAME}
......@@ -67,7 +70,7 @@ LOG_URL=http://www.michang-tech.com.cn:6989/log/addlog
#\u6821\u9A8C\u5151\u6362\u5BC6\u7801KEY
MEMBER_PASSWORD_KEY=DONGCHANGINT9527;
list.refreshtoken=true
jwt.domain=pd.shxrtech.com
jwt.domain=localhost
#\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD
jwt.duration=86400000
#\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u03AAtrue
......
......@@ -134,6 +134,7 @@
<th>微信OPENID</th>
<th>会员名称</th>
<th>联系方式</th>
<th>身份证</th>
<th>来源</th>
<!-- <th>邀请码</th>-->
<!-- <th>客户分类</th>-->
......@@ -243,6 +244,9 @@
{
"mData": "phone"
},
{
"mData": "cardid"
},
{
"mData": "source"
},
......@@ -276,21 +280,6 @@
}
}
},
/* {
"aTargets": [6],
"mData": "createTime",
"mRender": function (a, b, c, d) {//a表示createtime对应的值,c表示当前记录行对象
return formatDates(a, "yyyy-MM-dd HH:mm:ss");
}
},*/
// {
// "aTargets": [3],
// "mData": "surname",
// "mRender": function (a, b, c, d) {
// return a;
// }
// },
{
"aTargets": [3],
"mData": "openId",
......@@ -316,10 +305,9 @@
return a.slice(0, 3) + '****' + a.slice(7);
}
}, {
"aTargets": [6],
"aTargets": [7],
"mData": "source",
"mRender": function (a, b, c, d) {
if (a == 1) {
return "普通关注";
} else if (a == 2) {
......@@ -331,19 +319,17 @@
} else if (a == 5) {
return "组织二维码";
} else {
return "";
return "用户注册";
}
}
}
, {
"aTargets": [7],
"aTargets": [8],
"mData": "createTime",
"mRender": function (a, b, c, d) {
return formatDates(a, "yyyy-MM-dd HH:mm:ss");
}
}
]
});
}
......@@ -452,6 +438,5 @@
</script>
</body>
</html>
......@@ -330,7 +330,8 @@
CONVERT(AES_DECRYPT(m.phone,'aideakey') USING UTF8) as phone,
m.open_id AS openId,
m.create_time as createTime,
m.source
m.source,
m.cardid
FROM
wx_mp_member m
<include refid="sqlWhere"/>
......@@ -353,11 +354,19 @@
</select>
<select id="fanssChat" resultType="com.cftech.member.model.FanssVO">
SELECT openid,CONVERT(AES_DECRYPT(nickname,'aideakey') USING UTF8) nickname,headimgurl
FROM wx_mp_fanss WHERE openid = #{openid} and delflag=0
SELECT
f.id,
f.openid,
CONVERT(AES_DECRYPT(f.nickname,'aideakey') USING UTF8) nickname,
f.headimgurl,
CASE WHEN au.id IS NOT NULL THEN '1' ELSE '0' END isThree
FROM wx_mp_fanss f
LEFT JOIN wx_mp_member m ON f.openid = m.open_id AND m.del_flag = '0'
LEFT JOIN t_aidea_authentication au ON m.cardid = au.id_card AND au.del_flag = '0' AND au.status = '0'
WHERE f.openid = #{openid} and f.delflag = '0'
</select>
<!--个人信息修改
-->
<!-- 个人信息修改 -->
<update id="updateMember" parameterType="com.cftech.member.model.MemberVO">
update wx_mp_member
<set>
......
......@@ -9,7 +9,10 @@ import lombok.Data;
*/
@Data
public class FanssVO {
private String openid;
private String nickname;
private Long id;
private String openid;
private String nickname;
private String headimgurl;
private String isThree;// 1:三期用户 2:非三期用户
}
......@@ -36,13 +36,11 @@ public class Member implements Serializable {
@ExportConfig(value = "头像", width = 100)
private String imageurl;
/* 身份证 */
//@ExportConfig(value = "身份证", width = 100)
@ExportConfig(value = "身份证", width = 100)
private String cardid;
/* 其他信息 */
@ExportConfig(value = "Email", width = 100)
private String email;
/* 会员卡号 */
//@ExportConfig(value = "会员卡号", width = 100)
private String memberId;
......@@ -125,9 +123,6 @@ public class Member implements Serializable {
*/
private String source;
/**
* 会员卡名字
*/
......@@ -146,6 +141,7 @@ public class Member implements Serializable {
public Member() {
this.delFlag = false;
this.source = "0";
}
}
\ No newline at end of file
......@@ -11,6 +11,7 @@ import java.util.Date;
*/
@Data
public class MemberDto {
private Long id;
@ExportConfig(value = "会员头像",width = 100)
private String imageurl;
......@@ -22,12 +23,10 @@ public class MemberDto {
private String name;
@ExportConfig(value = "会员手机",width = 100)
private String phone;
/* 来源 */
@ExportConfig(value = "身份证",width = 100)
private String cardid;
@ExportConfig(value = "粉丝来源",width = 100)
private String source;
/*创建时间*/
@ExportConfig(value = "创建时间",width = 100)
private String createTime;
......
......@@ -132,9 +132,9 @@ public class MemberController {
//获取列表数据
@CSRFTokenRef
@RequiresPermissions(value = MEMBER_VIEW)
@RequestMapping(value = "/listData",method = {RequestMethod.POST})
@RequestMapping(value = "/listData", method = {RequestMethod.POST})
@ResponseBody
public JSONObject listData(int iDisplayStart, int iDisplayLength, Member member, HttpServletRequest request,HttpServletResponse response) {
public JSONObject listData(int iDisplayStart, int iDisplayLength, Member member, HttpServletRequest request, HttpServletResponse response) {
Long accountsId = UserUtils.getmpaccounts(request);
String res = ESAPI.encoder().decodeForHTML("https://www.michang-tech.com.cn/aidea/static/mp/aidea/meeting-intro.html?appid=wxa53abdf500a8ee6d&amp;id=6");
System.out.print(res);
......@@ -177,8 +177,8 @@ public class MemberController {
if (!StringUtils.isEmpty(member.getName())) {
conds.like("CONVERT(AES_DECRYPT(m.name,'aideakey') USING UTF8)", member.getName());
}
if (!StringUtils.isEmpty(member.getPhone())){
conds.like("CONVERT(AES_DECRYPT(m.phone,'aideakey') USING UTF8)",member.getPhone());
if (!StringUtils.isEmpty(member.getPhone())) {
conds.like("CONVERT(AES_DECRYPT(m.phone,'aideakey') USING UTF8)", member.getPhone());
}
......@@ -195,9 +195,9 @@ public class MemberController {
//删除数据
@RequiresPermissions(value = MEMBER_EDIT)
@RequestMapping(value="/delete",method = {RequestMethod.POST})
@RequestMapping(value = "/delete", method = {RequestMethod.POST})
@ResponseBody
public JSONObject delete(String id,HttpServletRequest request,HttpServletResponse response) {
public JSONObject delete(String id, HttpServletRequest request, HttpServletResponse response) {
JSONObject rtnJosn = new JSONObject();
try {
memberService.delete(id);
......@@ -210,20 +210,20 @@ public class MemberController {
//删除数据
@RequiresPermissions(value = MEMBER_EDIT)
@RequestMapping(value="/addMember",method = {RequestMethod.POST})
@RequestMapping(value = "/addMember", method = {RequestMethod.POST})
@ResponseBody
public JSONObject addMember(String code,HttpServletRequest request,HttpServletResponse response) {
public JSONObject addMember(String code, HttpServletRequest request, HttpServletResponse response) {
JSONObject rtnJosn = new JSONObject();
Long accountsId = UserUtils.getmpaccounts(request);
rtnJosn.put("errorNo", 0);
try {
if(!StringUtils.isEmpty(code)){
if (!StringUtils.isEmpty(code)) {
Conds conds = new Conds();
conds.equal("w.invitcode",code);
conds.equal("w.status",0);
conds.equal("w.del_flag",0);
conds.equal("w.invitcode", code);
conds.equal("w.status", 0);
conds.equal("w.del_flag", 0);
Workshop workshop = workshopService.fetchSearchByConds(conds);
if(workshop!=null){
if (workshop != null) {
Member member = new Member();
member.setStatus("1");
//member.setOilSum("0");
......@@ -239,12 +239,12 @@ public class MemberController {
//workshop.setMember_uid(member.getMember_uid());
workshop.setStatus("1");
workshopService.update(workshop);
}else{
} else {
rtnJosn.put("errorNo", 2);//邀请码无效
}
}else{
} else {
rtnJosn.put("errorNo", 2);//邀请码为空
}
} catch (Exception e) {
......@@ -255,17 +255,17 @@ public class MemberController {
@RequestMapping("/exportExcel")
@RequiresPermissions(value = MEMBER_VIEW)
public void exportExcel(HttpServletRequest request, HttpServletResponse response,Member member) throws ParseException {
public void exportExcel(HttpServletRequest request, HttpServletResponse response, Member member) throws ParseException {
Long accountsId = UserUtils.getmpaccounts(request);
Conds conds = new Conds();
conds.equal("m.del_flag", Constants.DEL_FLAG_0);
if (!StringUtils.isEmpty(member.getName())){
if (!StringUtils.isEmpty(member.getName())) {
conds.like("CONVERT(AES_DECRYPT(m.name,'aideakey') USING UTF8)", member.getName());
}
if (!StringUtils.isEmpty(member.getPhone())){
conds.like("CONVERT(AES_DECRYPT(m.phone,'aideakey') USING UTF8)",member.getPhone());
if (!StringUtils.isEmpty(member.getPhone())) {
conds.like("CONVERT(AES_DECRYPT(m.phone,'aideakey') USING UTF8)", member.getPhone());
}
Sort sort = new Sort("m.create_time", OrderType.DESC);
......@@ -273,20 +273,12 @@ public class MemberController {
List<MemberDto> list = memberService.selectmemberDto(conds, sort, 0, 0);
if (list.size() > 0) {
for (MemberDto memberDto : list) {
// if(memberDto.get==null){
// memberDto.setStatus("注册会员");
// if(memberDto.getSex().equals("1")){
// memberDto.setSex("男");
// }else if(memberDto.getSex().equals("0")){
// memberDto.setSex("女");
// }
// }else{
// memberDto.setStatus("虚拟会员");
// }
if ("1".equals(memberDto.getSex())) {
memberDto.setSex("男");
} else if ("0".equals(memberDto.getSex())) {
} else if ("2".equals(memberDto.getSex())) {
memberDto.setSex("女");
} else {
memberDto.setSex("");
}
if ("1".equals(memberDto.getSource())) {
memberDto.setSource("普通关注");
......@@ -294,18 +286,16 @@ public class MemberController {
memberDto.setSource("药师二维码");
} else if ("3".equals(memberDto.getSource())) {
memberDto.setSource("客服二维码");
}else if("4".equals(memberDto.getSource())){
} else if ("4".equals(memberDto.getSource())) {
memberDto.setSource("医生二维码");
}else if("5".equals(memberDto.getSource())){
} else if ("5".equals(memberDto.getSource())) {
memberDto.setSource("组织二维码");
}else {
memberDto.setSource("");
} else {
memberDto.setSource("用户注册");
}
Date parse = simpleDateFormat.parse(memberDto.getCreateTime());
memberDto.setCreateTime(simpleDateFormat.format(parse));
}
}
// 生成Excel并使用浏览器下载
ExcelKit.$Export(MemberDto.class, response).toExcel(list, "会员信息");
......
......@@ -45,6 +45,7 @@ public class MobileMemberController {
public JSONObject updateMember(MemberVO memberVO) {
return memberService.updateMember(memberVO);
}
/**
* @Author Licc
* @Description 个人中心用户信息
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment