Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
A
Aidea
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
sa_aidea
Aidea
Commits
23b8b821
Commit
23b8b821
authored
Mar 16, 2021
by
谢希宇
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Submit by Strive
Date 2021/03/16
parent
13b79a44
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
49 changed files
with
877 additions
and
709 deletions
+877
-709
authenticationform.html
...bapp/WEB-INF/views/authentication/authenticationform.html
+3
-3
authenticationlist.html
...bapp/WEB-INF/views/authentication/authenticationlist.html
+18
-7
Authentication.java
.../java/com/cftech/authentication/model/Authentication.java
+3
-4
AuthenticationController.java
...m/cftech/authentication/web/AuthenticationController.java
+21
-14
checkcouponform.html
...ain/webapp/WEB-INF/views/checkcoupon/checkcouponform.html
+85
-108
checkcouponlist.html
...ain/webapp/WEB-INF/views/checkcoupon/checkcouponlist.html
+3
-3
QrcodeUtil.java
...rc/main/java/com/cftech/checkcoupon/utils/QrcodeUtil.java
+1
-1
CheckcouponController.java
...ava/com/cftech/checkcoupon/web/CheckcouponController.java
+1
-1
checkresultform.html
...ain/webapp/WEB-INF/views/checkresult/checkresultform.html
+64
-0
checkresultlist.html
...ain/webapp/WEB-INF/views/checkresult/checkresultlist.html
+1
-1
CheckresultMapper.xml
...ain/java/com/cftech/checkresult/dao/CheckresultMapper.xml
+15
-3
Checkresult.java
...c/main/java/com/cftech/checkresult/model/Checkresult.java
+6
-2
CheckresultService.java
...va/com/cftech/checkresult/service/CheckresultService.java
+15
-0
CheckresultServiceImpl.java
...tech/checkresult/service/impl/CheckresultServiceImpl.java
+15
-0
CheckresultController.java
...ava/com/cftech/checkresult/web/CheckresultController.java
+61
-6
consultSheetlist.html
...n/webapp/WEB-INF/views/consultSheet/consultSheetlist.html
+21
-24
ConsultSheetController.java
...a/com/cftech/consultsheet/web/ConsultSheetController.java
+0
-1
MobileConsultSheetController.java
...cftech/consultsheet/web/MobileConsultSheetController.java
+1
-0
CouponrecordMapper.xml
...n/java/com/cftech/couponrecord/dao/CouponrecordMapper.xml
+1
-1
couponInvalidMsgRemindJob.java
...om/cftech/couponrecord/job/couponInvalidMsgRemindJob.java
+115
-0
CouponrecordServiceImpl.java
...ch/couponrecord/service/impl/CouponrecordServiceImpl.java
+47
-28
hospitalform.html
.../src/main/webapp/WEB-INF/views/hospital/hospitalform.html
+19
-16
hospitallist.html
.../src/main/webapp/WEB-INF/views/hospital/hospitallist.html
+3
-3
HospitalServiceImpl.java
...com/cftech/hospital/service/impl/HospitalServiceImpl.java
+48
-30
InvoiceDetail.java
...src/main/java/com/cftech/invoice/model/InvoiceDetail.java
+25
-1
InvoiceServiceImpl.java
...a/com/cftech/invoice/service/impl/InvoiceServiceImpl.java
+16
-16
editOrderAdsList.html
...src/main/webapp/WEB-INF/views/order/editOrderAdsList.html
+3
-3
orderlist.html
...le-web/src/main/webapp/WEB-INF/views/order/orderlist.html
+58
-75
orderlistout.html
...web/src/main/webapp/WEB-INF/views/order/orderlistout.html
+27
-54
OrderMapper.xml
...module/src/main/java/com/cftech/order/dao/OrderMapper.xml
+26
-86
InitAliasNumberJob.java
...rc/main/java/com/cftech/order/job/InitAliasNumberJob.java
+1
-0
OrderExpiredRemindJob.java
...main/java/com/cftech/order/job/OrderExpiredRemindJob.java
+1
-1
OrderFollowupRemindJob.java
...ain/java/com/cftech/order/job/OrderFollowupRemindJob.java
+0
-64
Order.java
...er-module/src/main/java/com/cftech/order/model/Order.java
+5
-9
OrderService.java
.../src/main/java/com/cftech/order/service/OrderService.java
+1
-1
OrderServiceImpl.java
.../java/com/cftech/order/service/impl/OrderServiceImpl.java
+7
-2
OrderController.java
...e/src/main/java/com/cftech/order/web/OrderController.java
+1
-1
productform.html
...eb/src/main/webapp/WEB-INF/views/product/productform.html
+7
-8
productlist.html
...eb/src/main/webapp/WEB-INF/views/product/productlist.html
+46
-47
WxQrcodeMapper.xml
...c/main/java/com/cftech/shop/qrcode/dao/WxQrcodeMapper.xml
+5
-4
WxQrcodeController.java
...n/java/com/cftech/shop/qrcode/web/WxQrcodeController.java
+17
-3
common-test.properties
cftech-common-web/src/main/resources/common-test.properties
+6
-3
memberlist.html
...-web/src/main/webapp/WEB-INF/views/member/memberlist.html
+7
-22
MemberMapper.xml
...dule/src/main/java/com/cftech/member/dao/MemberMapper.xml
+14
-5
FanssVO.java
...module/src/main/java/com/cftech/member/model/FanssVO.java
+5
-2
Member.java
...-module/src/main/java/com/cftech/member/model/Member.java
+2
-6
MemberDto.java
...dule/src/main/java/com/cftech/member/model/MemberDto.java
+3
-4
MemberController.java
...src/main/java/com/cftech/member/web/MemberController.java
+26
-36
MobileMemberController.java
...in/java/com/cftech/member/web/MobileMemberController.java
+1
-0
No files found.
aidea-modules/authentication-module-web/src/main/webapp/WEB-INF/views/authentication/authenticationform.html
View file @
23b8b821
...
...
@@ -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>
...
...
aidea-modules/authentication-module-web/src/main/webapp/WEB-INF/views/authentication/authenticationlist.html
View file @
23b8b821
...
...
@@ -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"
);
}
},
{
...
...
aidea-modules/authentication-module/src/main/java/com/cftech/authentication/model/Authentication.java
View file @
23b8b821
...
...
@@ -20,21 +20,20 @@ public class Authentication implements Serializable {
@ExportConfig
(
value
=
"姓名"
,
width
=
100
)
private
String
name
;
/* 身份证号码 */
@ExportConfig
(
value
=
"身份证号码"
,
width
=
1
0
0
)
@ExportConfig
(
value
=
"身份证号码"
,
width
=
1
5
0
)
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
;
...
...
aidea-modules/authentication-module/src/main/java/com/cftech/authentication/web/AuthenticationController.java
View file @
23b8b821
...
...
@@ -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
;
}
...
...
aidea-modules/checkcoupon-module-web/src/main/webapp/WEB-INF/views/checkcoupon/checkcouponform.html
View file @
23b8b821
This diff is collapsed.
Click to expand it.
aidea-modules/checkcoupon-module-web/src/main/webapp/WEB-INF/views/checkcoupon/checkcouponlist.html
View file @
23b8b821
...
...
@@ -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>
...
...
aidea-modules/checkcoupon-module/src/main/java/com/cftech/checkcoupon/utils/QrcodeUtil.java
View file @
23b8b821
...
...
@@ -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
,
tru
e
))
{
if
(
MatrixToImageWriter
.
writeToFile
(
bitMatrix
,
LOGO_FORMAT
,
outputFile
,
fals
e
))
{
return
DOMAIN_NAME
+
QECODE_URL
.
replace
(
"{PICFILENAME}"
,
mediaPath
);
}
return
null
;
...
...
aidea-modules/checkcoupon-module/src/main/java/com/cftech/checkcoupon/web/CheckcouponController.java
View file @
23b8b821
...
...
@@ -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"
;
}
...
...
aidea-modules/checkresult-module-web/src/main/webapp/WEB-INF/views/checkresult/checkresultform.html
View file @
23b8b821
...
...
@@ -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
()
{
...
...
aidea-modules/checkresult-module-web/src/main/webapp/WEB-INF/views/checkresult/checkresultlist.html
View file @
23b8b821
...
...
@@ -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>
...
...
aidea-modules/checkresult-module/src/main/java/com/cftech/checkresult/dao/CheckresultMapper.xml
View file @
23b8b821
...
...
@@ -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>
...
...
aidea-modules/checkresult-module/src/main/java/com/cftech/checkresult/model/Checkresult.java
View file @
23b8b821
...
...
@@ -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
co
p
ponRecordNo
;
//检测券编码
//
@ExportConfig(value = "检测券编码", width = 120, showLevel = 1)
private
String
co
u
ponRecordNo
;
//检测券编码
private
String
checkDateStr
;
private
String
reagentVerifDateStr
;
@ExportConfig
(
value
=
"实验室组织编码"
,
width
=
150
,
showLevel
=
2
)
private
String
orgCode
;
private
String
orgName
;
//实验室名称
private
Date
verifDate
;
//核销时间、检测时间
...
...
aidea-modules/checkresult-module/src/main/java/com/cftech/checkresult/service/CheckresultService.java
View file @
23b8b821
...
...
@@ -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
);
}
aidea-modules/checkresult-module/src/main/java/com/cftech/checkresult/service/impl/CheckresultServiceImpl.java
View file @
23b8b821
...
...
@@ -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
{
...
...
aidea-modules/checkresult-module/src/main/java/com/cftech/checkresult/web/CheckresultController.java
View file @
23b8b821
...
...
@@ -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
);
...
...
aidea-modules/consult-module-web/src/main/webapp/WEB-INF/views/consultSheet/consultSheetlist.html
View file @
23b8b821
...
...
@@ -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
;
}
...
...
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/web/ConsultSheetController.java
View file @
23b8b821
...
...
@@ -429,7 +429,6 @@ public class ConsultSheetController {
goodsDes
=
HtmlUtils
.
htmlUnescape
(
contents
);
Integer
integer
=
consultSheetService
.
updateStatus
(
consultId
,
status
,
goodsDes
);
if
(
integer
>
0
){
/**
* 生成空订单
*/
...
...
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/web/MobileConsultSheetController.java
View file @
23b8b821
...
...
@@ -29,6 +29,7 @@ public class MobileConsultSheetController {
public
JSONObject
submitConsultSheet
(
ConsultSheet
consultSheet
)
{
return
consultSheetService
.
pollingConsultSheet
(
consultSheet
);
}
/**
* @Author Licc
* @Description 咨询单列表 搜索
...
...
aidea-modules/couponrecord-module/src/main/java/com/cftech/couponrecord/dao/CouponrecordMapper.xml
View file @
23b8b821
...
...
@@ -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"
/>
...
...
aidea-modules/couponrecord-module/src/main/java/com/cftech/couponrecord/job/couponInvalidMsgRemindJob.java
0 → 100644
View file @
23b8b821
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
);
}
}
aidea-modules/couponrecord-module/src/main/java/com/cftech/couponrecord/service/impl/CouponrecordServiceImpl.java
View file @
23b8b821
This diff is collapsed.
Click to expand it.
aidea-modules/hospital-module-web/src/main/webapp/WEB-INF/views/hospital/hospitalform.html
View file @
23b8b821
...
...
@@ -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
)
{
...
...
aidea-modules/hospital-module-web/src/main/webapp/WEB-INF/views/hospital/hospitallist.html
View file @
23b8b821
...
...
@@ -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"
...
...
aidea-modules/hospital-module/src/main/java/com/cftech/hospital/service/impl/HospitalServiceImpl.java
View file @
23b8b821
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
;
}
...
...
aidea-modules/invoice-module/src/main/java/com/cftech/invoice/model/InvoiceDetail.java
View file @
23b8b821
...
...
@@ -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
;
}
aidea-modules/invoice-module/src/main/java/com/cftech/invoice/service/impl/InvoiceServiceImpl.java
View file @
23b8b821
...
...
@@ -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"
));
...
...
aidea-modules/order-module-web/src/main/webapp/WEB-INF/views/order/editOrderAdsList.html
View file @
23b8b821
...
...
@@ -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>
...
...
aidea-modules/order-module-web/src/main/webapp/WEB-INF/views/order/orderlist.html
View file @
23b8b821
This diff is collapsed.
Click to expand it.
aidea-modules/order-module-web/src/main/webapp/WEB-INF/views/order/orderlistout.html
View file @
23b8b821
...
...
@@ -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
;
}
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/dao/OrderMapper.xml
View file @
23b8b821
...
...
@@ -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"
result
Map=
"resultMapList
"
>
<select
id=
"fetchSearchByPage"
parameterType=
"java.util.Map"
result
Type=
"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>
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/job/InitAliasNumberJob.java
View file @
23b8b821
...
...
@@ -26,6 +26,7 @@ import java.text.SimpleDateFormat;
import
java.util.List
;
/**
* 每月重置别名定时任务
* Created by 16444 on 2021/1/4.
*/
@Slf4j
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/job/OrderExpiredRemindJob.java
View file @
23b8b821
...
...
@@ -22,7 +22,7 @@ import java.util.Date;
import
java.util.List
;
/**
* 待付款订单,
半
小时未付款自动取消
* 待付款订单,
两
小时未付款自动取消
* Created by 16444 on 2020/11/24.
*/
@Slf4j
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/job/OrderFollowupRemindJob.java
View file @
23b8b821
...
...
@@ -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
();
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/model/Order.java
View file @
23b8b821
...
...
@@ -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
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/service/OrderService.java
View file @
23b8b821
...
...
@@ -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
();
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/service/impl/OrderServiceImpl.java
View file @
23b8b821
...
...
@@ -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
;
}
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/web/OrderController.java
View file @
23b8b821
...
...
@@ -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
);
...
...
aidea-modules/product-module-web/src/main/webapp/WEB-INF/views/product/productform.html
View file @
23b8b821
...
...
@@ -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="销量"-->
<!-->-->
<!--</div>-->
</div>
<input
type=
"text"
style=
"display: none"
name=
"_csrf"
value=
"${_csrf.token}"
/>
...
...
aidea-modules/product-module-web/src/main/webapp/WEB-INF/views/product/productlist.html
View file @
23b8b821
...
...
@@ -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"
:
"c
ommon
Name"
"mData"
:
"c
lassify
Name"
},
{
"mData"
:
"
dosagaFrom
"
"mData"
:
"
productName
"
},
{
"mData"
:
"
format
"
"mData"
:
"
commonName
"
},
{
"mData"
:
"
approve
Number"
"mData"
:
"
product
Number"
},
// {
// "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"
:
[
1
9
],
"aTargets"
:
[
1
0
],
"mData"
:
"id"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
var
html
=
'#if($shiro.hasPermission("qy:product:edit"))'
;
//
...
...
behavior-modules/wx-qrcode-module/src/main/java/com/cftech/shop/qrcode/dao/WxQrcodeMapper.xml
View file @
23b8b821
...
...
@@ -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"
>
...
...
behavior-modules/wx-qrcode-module/src/main/java/com/cftech/shop/qrcode/web/WxQrcodeController.java
View file @
23b8b821
...
...
@@ -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
);
...
...
cftech-common-web/src/main/resources/common-test.properties
View file @
23b8b821
...
...
@@ -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
#\u
75C5\u8F7D\u
68C0\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
=
\u
6C5F
\u
82CF
\u
827E
\u
8FEA
\u
836F
\u
4E1A
...
...
@@ -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
...
...
membercard-modules/member-module-web/src/main/webapp/WEB-INF/views/member/memberlist.html
View file @
23b8b821
...
...
@@ -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>
membercard-modules/member-module/src/main/java/com/cftech/member/dao/MemberMapper.xml
View file @
23b8b821
...
...
@@ -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>
...
...
membercard-modules/member-module/src/main/java/com/cftech/member/model/FanssVO.java
View file @
23b8b821
...
...
@@ -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:非三期用户
}
membercard-modules/member-module/src/main/java/com/cftech/member/model/Member.java
View file @
23b8b821
...
...
@@ -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
membercard-modules/member-module/src/main/java/com/cftech/member/model/MemberDto.java
View file @
23b8b821
...
...
@@ -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
;
...
...
membercard-modules/member-module/src/main/java/com/cftech/member/web/MemberController.java
View file @
23b8b821
...
...
@@ -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&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
,
"会员信息"
);
...
...
membercard-modules/member-module/src/main/java/com/cftech/member/web/MobileMemberController.java
View file @
23b8b821
...
...
@@ -45,6 +45,7 @@ public class MobileMemberController {
public
JSONObject
updateMember
(
MemberVO
memberVO
)
{
return
memberService
.
updateMember
(
memberVO
);
}
/**
* @Author Licc
* @Description 个人中心用户信息
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment